Data Base_Oracle/SQL

SQL_OBJECT PRIVILEGE 개요 & DATA DICTIONARY

pathas 2020. 1. 13. 17:11

OBJECT PRIVILEGE 객체 권한

계정별로 관리하는 테이블, 뷰, 시퀀스, 동의어, 인덱스 등에 관련된 권한

OBJECT PRIVILEGE_DATA DICTIONARY

※ table_privilege_map
객체 권한 종류를 조회할 수 있는 Oracle 시스템 테이블 일반 계정에서도 조회 가능

PRIVILEGE  NAME
0  ALTER
1  AUDIT
2  COMMIT
주석, 툴(exerd, erwin etc.)로 테이블 설계시 필요
3  DELETE
4  GRANT, 권한 부여
5  INDEX
6  INSERT, 데이터 입력
7  LOCK
8  RENAME, 테이블, 필드 이름 변경
PRIVILEGE  NAME
9  SELECT
 보안 때문에 잘 부여하지 않음,
 대신에 보통 VIEW 실행 권한을 줌
10  UPDATE, 테이블 데이터 변경
11  REFERENCES
12  EXECUTE, 실행 권한(뷰, 함수 등), ex) to_char(~)
16  CREATE, 생성권한
 CREATE 테이블, 뷰, 시노님을 명확하게 구분해서 부여해야 함
...  ...
27  FLASHBACK, 데이터 복구에 관련된 명령어
...  ...

※ 보통 다른 계정에 권한을 줄 때는 DML(insert, update, delete)만 부여하고
SELECT대신에 EXCUTE ON VIEW(뷰 실행 권한)를 부여하는 경우가 많음


OBJECT PRIVILEGE 부여

§ 형식

[ SQL> grant 권한종류,,, on 테이블명 / 뷰명 / 객체명,,, to 계정명,,,; ]

※ 객체 권한은 계정별로 테이블, 뷰 등 객체 단위로 부여하기 때문에 on을 사용함


객체 권한의 개요와 데이터 딕셔너리에 대해 알아보았습니다.

객체 권한은 계정간 객체를 공유할 때 부여한다는 점을 기억해두면 좋을 것 같습니다.

객체 권한 예제는 다음에 다룰 with grant option에서 함께 살펴보겠습니다.