프로그램 메뉴 테이블 및 유저 권한 테이블 설계
메뉴 및 유저 권한 테이블 설계
메뉴 테이블 예시
제약조건 | 컬럼명 | 데이터 타입 | 기본값 | 설명 |
---|---|---|---|---|
PK | menu_id | INT | 메뉴ID | |
menu_name | VARCHAR | 메뉴명 | ||
parent_id | INT | 상위 메뉴ID | ||
menu_url | VARCHAR | 메뉴 링크 URL | ||
menu_icon_url | VARCHAR | 메뉴 아이콘 URL | ||
del_yn | CHAR(1) | 'N' | 삭제 여부 |
메뉴 아래에 2 Depth 하위 메뉴가 존재할 수 있게 설계하였습니다.
권한 테이블 예시
제약조건 | 컬럼명 | 데이터 타입 | 기본값 | 설명 |
---|---|---|---|---|
PK | permission_id | INT | 권한ID | |
permission_name | VARCHAR | 권한명 | ||
description | VARCHAR | 권한 설명 |
admin, user, guest 등 사용자 구분에 맞는 권한을 관리하는 테이블입니다.
메뉴-권한 매핑 테이블 예시
제약조건 | 컬럼명 | 데이터 타입 | 기본값 | 설명 |
---|---|---|---|---|
PK | menu_permission_id | INT | 메뉴-권한 매핑ID | |
FK | menu_id | INT | 메뉴ID | |
FK | permission_id | INT | 권한ID |
유저 권한에 맞는 메뉴만 보여주도록 쿼리로 제어할 수 있습니다.
유저-권한 매핑 테이블 예시
제약조건 | 컬럼명 | 데이터 타입 | 기본값 | 설명 |
---|---|---|---|---|
PK | user_permission_id | INT | 유저-권한 매핑ID | |
FK | user_id | INT | 유저ID | |
FK | permission_id | INT | 권한ID |
일반적으로 사용자는 여러 개의 권한을 가질 수 있습니다.
Leave a comment