본문으로 건너뛰기

6.1. 인증/인가모듈 Table 구조

6.1.1. Table 및 Column 개요

erd_security

테이블설명
application어플리케이션 관리(CRUD)
authcodeAuthentication code 방식으로 발급된 code를 저장
keystore사용자 키 관리
role역할 관리
session세션 관리
token발급된 토큰 관리
user_app_map사용자-어플리케이션 매핑 값 관리
users사용자 관리
vericode비밀번호 찾기 인증코드 관리

6.1.2. application Table

ColumnData TypePKFKNot NULLDescription
application_id_pkvarchar (20)OO어플리케이션 기본 키(a-zA-Z0-9로 구성된 임의 20자리)
application_fk1varchar (20)OO어플리케이션 외래 키(users/user_id_pk) (어플리케이션 등록한 ID)
application_namevarchar (30)O어플리케이션 이름
application_secretvarchar (32)O어플리케이션 비밀 키(a-zA-Z0-9로 구성된 임의 32자리)
redirect_urivarchar (200)O어플리케이션 리다이렉션 URI 주소
scopevarchar (100)Oread/write (기본값: "read")
is_trustedboolO어플리케이션 허용 여부

6.1.3. authcode Table

ColumnData TypePKFKNot NULLDescription
authcode_fk1varchar (20)OO어플리케이션 기본 키
authcode_fk2varchar (20)OO유저 아이디
codevarchar (32)OAuthentication code 방식으로 발급된 코드
redirect_urivarchar (200)O어플리케이션 등록 시 작성한 리다이렉션 URI

6.1.4. keystore Table

ColumnData TypePKFKNot NULLDescription
user_id_pkvarchar (20)OO유저 아이디
pub_keyvarchar (500)O공개 키
pri_keyvarchar (2000)O비밀 키

6.1.5. role Table

ColumnData TypePKFKNot NULLDescription
role_id_pkvarchar (8)OORole 기본 키(a-zA-Z0-9로 구성된 임의 8자리)
role_namevarchar (30)Role 이름
role_typevarchar (12)ORole Type (general 또는 admin)
descriptionvarchar (100)Role 설명

6.1.6. session Table

ColumnData TypePKFKNot NULLDescription
sidvarcharOO세션 아이디
sessjsonO쿠키 데이터
expiretimestampO세션 만료 시간

6.1.7. token Table

ColumnData TypePKFKNot NULLDescription
token_fk1varchar (20)OO어플리케이션 아이디
token_fk2varchar (20)OO유저 아이디
tokenvarchar (900)O발급 받은 토큰 저장
issued_atvarchar (13)O토큰 발급 시간
refresh_tokenvarchar (128)O리프레시 토큰 저장
expire_timevarchar (13)O토큰 만료 시간
rexpire_timevarchar (13)O토큰 재발급 유효 시간

6.1.8. user Table

ColumnData TypePKFKNot NULLDescription
user_id_pkvarchar (20)OO유저 아이디
passwordvarchar (60)O패스워드
nicknamevarchar (20)O닉네임
namevarchar (20)O이름
phonevarchar (11)O휴대폰 번호
emailvarchar (20)O이메일
email_verifyboolO이메일 인증여부(기본값: false)
rolevarchar (30)OO유저 Role 정보
user_statevarchar (1)O유저 상태

6.1.9. vericode Table

ColumnData TypePKFKNot NULLDescription
vericode_fk1varchar (20)OO인증 고유번호
vericode_fk2varchar (30)O유저 이메일
vericodevarchar (32)O인증 코드
methodvarchar (5)O인증 방식(이메일)
expire_timetimestampO인증 유효 기간