본문 바로가기

Database/Oracle

오라클 데이터베이스를 설치하면 기본적으로 생성되는 Role


오라클 데이터베이스를 설치하면 기본적으로 생성되는 Role 

오라클 데이터베이스를 생성하면 기본적으로 몇 가지의 Role이 생성 됩니다.
 
DBA_ROLES 데이터 사전을 통하여 미리 정의된 Role을 조회 할 수 있습니다.
 
SQL>SELECT * FROM DBA_ROLES;

ROLE                             PASSWORD
----------------------    -----------
CONNECT                              NO
RESOURCE                            NO
DBA                                       NO
SELECT_CATALOG_ROLE        NO
EXECUTE_CATALOG_ROLE      NO
DELETE_CATALOG_ROLE         NO
EXP_FULL_DATABASE             NO
IMP_FULL_DATABASE              NO
....

이 외에도 많이 ROLE이 존재합니다.
그 중에서 가장 많이 사용하는 3가지만 설명 하겠습니다.




CONNECT
 
- 오라클에 접속 할 수 있는 세션 생성 및 테이블을 생성하거나 조회 할 수 있는  가장 일반적인 권한들로 이루어져 있습니다.

- CONNECT Role이 없으면 유저를 생성하고서도 Oracle에 접속 할 수가 없습니다.

- 아래의 명령어로 CONNECT Role이 어떤 권한으로 이루어져 있는지 확인 할 수 있습니다.


 SQL>SELECT grantee, privilege
        FROM DBA_SYS_PRIVS
        WHERE grantee = 'CONNECT';

GRANTEE     PRIVILEGE
----------- ---------------------
CONNECT     ALTER SESSION
CONNECT     CREATE CLUSTER
CONNECT     CREATE DATABASE LINK
CONNECT     CREATE SEQUENCE
CONNECT     CREATE SESSION
CONNECT     CREATE SYNONYM
CONNECT     CREATE TABLE
CONNECT     CREATE VIEW



RESOURCE

 - Store Procedure나 Trigger와 같은 PL/SQL을 사용할 수 있는 권한 들로 이루어져 있습니다.

 - PL/SQL을 사용하려면 RESOURCE Role을 부여해야 합니다.
 
 - 유저를 생성하면 일반적으로 CONNECT, RESOURCE롤을 부여 합니다.

SQL>SELECT grantee, privilege
        FROM DBA_SYS_PRIVS
        WHERE grantee = 'RESOURCE';



DBA

 - 모든 시스템 권한이 부여된 Role입니다.

 - DBA Role은 데이터베이스 관리자에게만 부여해야 합니다.  
 
  ================================================
    * Oracle Community OracleClub.com
    * http://www.oracleclub.com
    * http://www.oramaster.net
    * 운영자 : 김정식 (oramaster _at_ empal.com)
  ================================================

출처 : Tong - [별난상이]님의 ORACLE통