본문 바로가기

개발/SQL

[SQL] Oracle - (DCL) GRANT / REVOKE

< DCL (Data Control Language) >

 

- 데이터 제어 언어

- 계정에게 객체 접근 권한, 시스템 권한을 부여(GRANT)하거나, 회수(REVOKE)하는 언어

 

 

< GRANT >

 

- 객체 접근 권한 : 특정 객체들에 접근해서 조작할 수 있는 권한

> 시스템 권한 : 특정 DB에 접근하는 권한, 객체들을 생성(CREATE)할 수 있는 권한

- CREATE SESSION : 계정에 접속할 수 있는 권한
- CREATE TABLE : 테이블을 생성할 수 있는 권한
- CREATE VIEW : 뷰를 생성할 수 있는 권한
- CREATE SEQUENCE : 시퀀스를 생성할 수 있는 권한
- CREATE USER : 계정을 생성할 수 있는 권한

...
> 객체 권한 : 특정 객체를 조작(SELECT, INSERT, DELETE, UPDATE)할 수 있는 권한
    
    [ 표현법 ]
    GRANT 권한종류 ON 특정객체 TO 계정명;

    [ 종류 ]
- SELECT : TABLE, VIEW, SEQUENCE
- INSERT  : TABLE, VIEW
- UPDATE : TABLE, VIEW
- DELETE : TABLE, VIEW

 

 

< REVOKE >

 

- 부여한 권한을 회수할 때 사용하는 명령어

[ 표현법 ]

REVOKE 권한1, 권한2, ... FROM 사용자이름;

 

 

< 롤 (ROLE) >

 

- 특정 권한들을 하나의 집합으로 모아놓은 것

 

ex)

CONNECT 롤 RESOURCE 롤
CREATE SESSION CREATE SEQUENCE
  CREATE TRIGGER
  CREATE CLUSTER
  CREATE PROCEDURE
  CREATE TYPE
  CREATE OPERATOR
  CREATE TABLE
  CREATE INDEXTYPE