728x90
반응형
DCL
DCL(Data Control Language)
- 데이터 제어어로, 객체에 대한 권한을 부여(GRANT)하거나 회수(REVOKE)하는 기능
- 테이블 소유자는 타계정에 테이블 조회 및 수정 권한 부여 및 회수 가능
권한
- 일반적으로 본인(접속한 계정) 소유가 아닌 테이블은 원칙적으로 조회 불가
- 권한 통제
- 업무적으로 필요 시 테이블 소유자가 아닌 계정에 테이블 조회, 수정 권한 부여 가능
권한 종류
1) 오브젝트 권한
- 테이블에 대한 권한 제어
- 예) 특정 테이블에 대한 SELECT, INSERT, UPDATE, DELETE, MERGE 권한
- 테이블 소유자는 타계정 소유 테이블에 대한 조회 및 수정 권한 부여 및 회수 가능
2) 시스템 권한
- 시스템 권한을 제어
- 예) 테이블 생성 권한, 인덱스 삭제 권한
- 관리자 권한만 권한 부여 및 회수 가능
GRANT
- 권한 부여 시 반드시 테이블 소유자나 관리자 계정(SYS, SYSTEM)으로 접속하여 권한을 부여해야 함
- 동시에 여러 유저에 대한 권한 부여 가능
- 동시에 여러 권한 부여 가능
- 동시에 여러 객체 권한 부여 불가능
예시
REVOKE
- 동시에 여러 권한 회수 가능
- 이미 회수된 권한을 재회수 불가
- 동시에 여러 유저로부터 권한 회수 가능
예시
ROLE(롤)
- 권한의 묶음 (생성 가능한 객체)
- SYSTEM 계정에서 ROLE 생성 가능
- ROLE을 통해 부여한 권한은 직접 회수 불가능
- ROLE을 통한 회수만 가능
예시
권한 부여 옵션
중간 관리자의 권한
1) WITH GRANT OPTION
- WITH GRANT OPTION으로 받은 오브젝트 권한을 다른 사용자에게 부여할 수 있음
- 중간 관리자(WITH GRANT OPTIN으로 권한을 부여받은 자)가 부여한 권한은 중간 관리자만 회수 가능
- 중간 관리자에게 부여된 권한 회수 시 제 3자에게 부여된 권한도 함께 회수됨
2) WITH ADMIN OPTION
- WITH ADMIN OPTION을 통해 부여 받은 시스템 권한/롤 권한을 다른 사용자에게 부여할 수 있음
- 중간 관리자를 거치지 않고 직접 회수 가능
- 중간 관리자 권한 회수 시 제 3자에게 부여된 권한도 함께 회수안되고 남아 있음
반응형
'[DB]DataBase > [SQL]' 카테고리의 다른 글
[SQLD] DDL (0) | 2024.05.22 |
---|---|
[SQLD] TCL (0) | 2024.05.21 |
[SQLD] DML (0) | 2024.05.21 |
[SQLD] 정규 표현식 (0) | 2024.05.20 |
[SQLD] PIVOT 절과 UNPIVOT 절 (0) | 2024.05.20 |