DCL

DONI·2021년 9월 30일
0

Oracle

목록 보기
13/22
post-thumbnail

🏹 계정의 종류

  • 관리자 계정
    : 데이터베이스의 생성과 관리를 담당하며, 모든 권한과 책임을 가지는 계정
    예) sys, system

  • 사용자 계정
    : 질의, 갱신, 보고서 작성 등의 데이터베이스 작업을 수행할 수 있는 계정
      업무에 필요한 최소한의 권한만 가지는 것을 원칙으로 함

   🧶 계정 생성 및 삭제 구문
      ◾ 계정 생성 : CREATE USER 사용자명 IDENTIFIED BY 암호
      ◾ 계정 삭제 : DROP USER 사용자명


🏹 GRANT

GRANT 권한 [컬럼명] | ALL
ON 객체명 | ROLE 이름 | PUBLIC
TO 사용자명

권한 종류설정 객체
SELECTTABLE, VIEW, SEQUENCE
INSERTTABLE, VIEW
UPDATETABLE, VIEW
DELETETABLE, VIEW
ALTERTABLE, SEQUENCE
REFERENCESTABLE
INDEXTABLE
EXECUTEPROCEDURE
  • 예) sample 계정에게 EMPLOYEE 테이블에 대한 SELECT 권한을 부여
    GRANT SELECT ON EMPLOYEE TO sample;

🏹 ROLE

여러 가지 관련된 권한들을 묶어서 한 번에 부여, 회수하는 용도로 사용

  • CONNECT : 데이터베이스 접속 권한 (== CREATE SESSION)
    SELECT * FROM ROLE_SYS_PRIVS WHERE ROLE = 'CONNECT';
    --> CONNECT 롤에 포함된 권한 모두 조회

  • RESOURCE : 데이터베이스를 사용하기 위한 기본 객체 생성 권한
    SELECT * FROM ROLE_SYS_PRIVS WHERE ROLE = 'RESOURCE';
    --> TABLE 외 7가지 생성 권한


🚩 소스코드

ROLE을 이용하여 sample 사용자 계정 생성 및 권한 부여

CREATE USER sample IDENTIFIED BY sample1234;
GRANT CONNECT, RESOURCE TO sample;
profile
틀린 내용이 있다면 댓글 또는 이메일로 알려주세요 ❤ꔛ❜

0개의 댓글