forked from SeungpilPark/uEngine-bill
-
Notifications
You must be signed in to change notification settings - Fork 7
IAM 연동 및 멀티 테넌시 처리(Organization) 설계서
SeungpilPark edited this page Mar 20, 2017
·
1 revision
DROP TABLE IF EXISTS organization;
CREATE TABLE organization (
id VARCHAR(36) NOT NULL,
name VARCHAR(256) NOT NULL,
tenant_id VARCHAR(36) NOT NULL,
tenant_external_key VARCHAR(255) NULL,
tenant_api_key VARCHAR(128) NULL,
tenant_api_secret VARCHAR(128) NULL,
tenant_api_salt VARCHAR(128) NULL,
fax VARCHAR(255) NULL,
website VARCHAR(255) NULL,
language_code VARCHAR(10) NULL,
time_zone VARCHAR(125) NULL,
date_format VARCHAR(128) NULL,
currency varchar(3) DEFAULT NULL,
is_active CHAR(1) DEFAULT 'Y',
address1 varchar(100) DEFAULT NULL,
address2 varchar(100) DEFAULT NULL,
company_name varchar(256) DEFAULT NULL,
city varchar(50) DEFAULT NULL,
state_or_province varchar(50) DEFAULT NULL,
country varchar(50) DEFAULT NULL,
postal_code varchar(16) DEFAULT NULL,
phone varchar(25) DEFAULT NULL,
notes varchar(4096) DEFAULT NULL,
reg_dt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY(id)
)
ENGINE=InnoDB
DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS authority;
CREATE TABLE authority (
id VARCHAR(36) NOT NULL,
organization_id VARCHAR(36) NOT NULL,
user_id VARCHAR(36) NOT NULL,
user_name VARCHAR(128) NOT NULL,
role VARCHAR(36) NOT NULL,
reg_dt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY(id)
)
ENGINE=InnoDB
DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS organization_email;
CREATE TABLE organization_email (
id VARCHAR(36) NOT NULL,
organization_id VARCHAR(36) NOT NULL,
email varchar(128) NOT NULL,
is_active CHAR(1) DEFAULT 'Y',
is_default CHAR(1) DEFAULT 'N',
reg_dt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY(id)
)
ENGINE=InnoDB
DEFAULT CHARSET=utf8;
도메인 | METHOD | URI | 설명 |
---|---|---|---|
Auth | POST | /rest/v1/access_token | 아이디, 패스워드로 로그인하여 토큰을 받아온다. |
GET | /rest/v1/token_info | 토큰 정보를 알아낸다 | |
organization | POST | /rest/v1/organization | 조직을 생성한다 |
GET | /rest/v1/organization | 조직 리스트를 가져온다 | |
GET | /rest/v1/organization{id} | 조직 한건의 정보를 가져온다 | |
PUT | /rest/v1/organization{id} | 조직 한건을 업데이트한다. | |
organizationEmail | POST | /rest/v1/organizationEmail | 조직 이메일을 추가한다. |
GET | /rest/v1/organizationEmail | 조직 이메일 리스트를 가져온다. | |
GET | /rest/v1/organizationEmail{id} | 조직 이메일 한건을 가져온다. | |
DELETE | /rest/v1/organizationEmail{id} | 조직 이메일을 삭제한다. |