[ORACLE] 유저 생성과 DCL - GRANT

privatekim·2024년 6월 24일
0

ORACLE

목록 보기
15/38

GRANT

특정 사용자에게 권한을 위임하는 명령어로 사용된다.

예를들어 다음과 같이 사용자가 생성되었다고 가정하자.

유저 권한

CREATE USER insa IDENTIFIED BY oracle 
DEFAULT TABLESPACE users 
TEMPORARY TABLESPACE temp
QUOTA 10M ON users 
ACCOUNT UNLOCK;

위 코드에서 이미 insa라는 계정을 생성할 때 기본 tablespace를 user, quota의 크기를 10mb, 계정상태가 unlock과 같은 여러가지 권한을 부여받았다.

유저 생성시 주의할 점

  1. 고유한 이름으로 유저를 생성해야 함.

  2. 사용하기위한 권한공간 지정 - QUOTA

  3. 계정 상태 지정 - ACCOUNT

  4. DEFAULT_TABLESPACE에서 SYSTEM, SYSAUX에 해당하는 계정은 오라클에서 관리를 목적으로 사용하는 계정이기 때문에 해당 테이블 스페이스에 유저를 작성하면 안된다.

  5. 공간이 부족할 경우 임시 테이블 스페이스 지정 - TEMPORARY TABLESPACE

유저 접속 권한 부여

현재 유저는 생성되었지만, CREATE SESSION에 대한 권한이 없기 때문에 접속할 수 없다. 다음 코드를 통해 권한을 부여하면 정상적으로 접속할 수 있다.

GRANT create session TO insa;

DBA가 사용자에게 부여된 권한확인

select * from dba_sys_privs where grantee='INSA';

위 코드를 통해 insa계정에 부여된 권한을 확인할 수 있다.

사용자가 본인이 받은 권한 확인

select * from user_sys_privs;

0개의 댓글