[SQLD] 3-8. DCL(Data Control Language) - 키워드 요약 | 정리 | SQLD 공부 | 개발자 자격증 | SQL 기본 및 활용 :: 매운코딩
728x90
300x250

[과목2.SQL 기본 및 활용 3-8. DCL(Data Control Language)] 

1.     DCL?

(1)   새로운 유저를 생성하고 권한을 제어할 수 있는 명령어

(2)   DB는 데이터 보호와 보안을 위해서 유저/권한을 관리하고있다.

 

2.     Oracle에서 제공하는 유저들

(1)   Scott : 테스트용 샘플 유저

(2)   Sys : 백업 복구 등 DB의 모든 관리 기능 수행 가능함. DBA 권한을 부여 받은 유저, 최상위 관리자 계정

(3)   System : 백업/복구 등 일부 기능을 제외한 모든 시스템 권한을 부여받은 DBA계정, 오라클 설치시에 패스워드 설정 , SYS 바로 밑)

(4)    

 

3.     GRANT

(1)   권한을 부여하는 명령어 DCL 이다.

(2)   CREATE SESSION : 유저가 로그인 할 수 있게 해줌

(3)   CREATE TABLE : 유저가 테이블을 생성할 수 있게 해줌

예시)
GRANT [
권한명] TO [권한을 부여할 유저 명];

 

4.     REVOKE

(1)   부여한 권한을 회수하는 명령어 DCL이다.

 

5.     ROLE 이란?

(1)   위의 GRANT를 일일이 모든 권한에 대해 치기가 매우 번거롭고 힘들다.

(2)   그래서 ROLE을 생성하고 ROLE에 각종 권한을 부여한 후 ROLE을 다른 ROLE이나 유저에게 부여한다.

(3)   ROLE에 포함된 권한들이 필요한 유저에게 ROLE만 부여함으로써 빠르고 정확하게 필요한 권한을 부여할 수 있다.

(4)   ROLE을 생성하여 ROLE에 권한을 부여할 때도 GRANT 문을 쓴다. TO 뒤에 ROLE 명을 기입

 

6.     CONNECT, RESOURCE ROLE이 보유한 권한들

(1)   CONNECT : CREATE SESSION

(2)   RESOURCE : CREATE CLUSTER ,
CREATE TYPE,
CREATE TABLE,
CREATE PROCEDURE,
CREATE TRIGER
….

(3)   거의 필요한 권한이 들어있기 때문에 유저 생성시 위의 2가지 ROLE을 부여한다.

728x90

+ Recent posts