📚CS/SQL
SQL 기본 및 활용 -DCL
바규냐하
2023. 8. 5. 15:35
1. DCL 개요
유저를 생성하고 권한을 제어할 수 있는 DCL (DATA CONTROL LANGUAGE) 명령어가 있다.
2. 유저와 권한
유저 | 역할 |
SCOTT | Oracle 테스트용 샘플 유저 Default 패스워드 : TIGER |
SYS | DBA ROLE을 부여받은 유저 |
SYSTEM | 데이터베이스의 모든 시스템 권한을 부여받은 DBA 유저 Oracle 설치 완료 시에 패스워드 설정 |
유저 생성과 시스템 권한 부여
일반적으로 시스템 권한은 일일이 유저에게 부여되지 않는다.
롤 (ROLE)응 이용하여 간편하고 쉽게 권한을 부여하게 된다.
먼저 유저를 생성하고 권한을 부여한다.
새로운 유저를 생성하려면 일단 유저 생성 권한(CREATE USER)이 있어야 한다.
OBJECT에 대한 권한 부여
오브젝트 권한은 특정 오브젝트인 테이블, 뷰 등에 대한 SELECT, INSERT, DELETE, UPDATE 작업 명령어를 의미한다.
3. Role을 이용한 권한 부여
유저를 생성하면 기본적으로 CREATE SESSION, CREATE TABLE, CREATE PROCEDURE 등 많은 권한을 부여해야 한다.
데이터베이스 관리자는 ROLE을 생성하고, ROLE에 각종 권한들을 부여한 후 ROLE을 다른 ROLE이나 유저에게 부여할 수 있다.
또한 ROLE에 포함되어 있는 권한들이 필요한 유저에게는 해당 ROLE이나 유저에게 부여할 수 있다.
왼쪽 그림은 권한을 직접 유저에게 할당할 때를 나타내는 것이며, 오른쪽 그림은 ROLE에 권한을 부여한 후 ROLE을 유저들에게 부여하는 것을 나타내고 있다.
글에서 나오는 코드와 내용은 책 SQL 전문가 가이드에서 가져옴을 알립니다.