스키마 권한

2023. 4. 17.·Oracle/Administration

Oracle 23c에 스키마 권한이 추가되어 스키마 단위로 권한을 관리할 수 있게 되었습니다.

Oracle Database supports schema privileges in addition to the existing object, system, and administrative privileges. This feature improves security by simplifying authorization for database objects to better implement the least privileges principle.

 

테스트를 위해 아래와 같이 u1, u2 유저를 생성하겠습니다.

-- 1
DROP USER u1 CASCADE;
DROP USER u2 CASCADE;

CREATE USER u1 IDENTIFIED BY "u1";
CREATE USER u2 IDENTIFIED BY "u2";

GRANT CREATE SESSION, UNLIMITED TABLESPACE, CREATE TABLE TO u1;
GRANT CREATE SESSION, UNLIMITED TABLESPACE, CREATE TABLE TO u2;

 

u1 유저에서 t1 테이블을 생성하고, u2 유저에서 u1.t1 테이블을 조회하면 에러가 발생합니다.

-- 2-1: U1
DROP TABLE t1 PURGE;
CREATE TABLE t1 (c1) AS SELECT 1 FROM DUAL;

-- 2-2: U2
SELECT * FROM u1.t1;

ORA-00942: 테이블 또는 뷰가 존재하지 않습니다

 

아래와 같이 u1 스키마에 대한 SELECT ANY TABLE 권한을 u2 유저에 부여할 수 있습니다. DBA_SCHEMA_PRIVS 뷰에서 스키마 권한 정보를 조회할 수 있습니다.

-- 3-1
GRANT SELECT ANY TABLE ON SCHEMA u1 TO u2;

권한이 부여되었습니다.

-- 3-2
SELECT * FROM dba_schema_privs;

GRANTEE PRIVILEGE        SCHEMA ADMIN_OPTION COMMON INHERITED
------- ---------------- ------ ------------ ------ ---------
U2      SELECT ANY TABLE U1     NO           NO     NO

1개의 행이 선택되었습니다.

 

u2 유저에서 u1.t1 테이블을 다시 조회하면 에러가 발생하지 않습니다.

-- 4: U2
SELECT * FROM u1.t1;

C1
--
 1

1개의 행이 선택되었습니다.
저작자표시 비영리 변경금지 (새창열림)
'Oracle/Administration' 카테고리의 다른 글
  • 최대 칼럼 수 증가
  • Automatic Transaction Rollback
  • SQL 도메인
  • UPDATE 문에 대한 DEFAULT ON NULL 절
정희락
정희락
2007년부터 Oracle Database 성능 최적화에 관심을 가져왔습니다. 현재 한국오라클 Engineered Systems Solution Engineering 팀에서 Solution Engineer로 근무하고 있습니다. 이 블로그는 개인적인 연구 목적으로 운영되며 Oracle 사의 공식적인 입장을 대변하지 않습니다.
  • 정희락
    TunA
    정희락
  • 전체
    오늘
    어제
    • 분류 전체보기 (206)
      • Oracle (177)
        • SQL (36)
        • PLSQL (10)
        • Performance (75)
        • Administration (37)
        • Installation (3)
        • Utilities (1)
        • JSON (8)
        • Vector (7)
      • Exadata (16)
      • SQL*Plus (2)
      • Linux (5)
      • Resources (6)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 도서

    • 불친절한 SQL 프로그래밍
    • 불친절한 PL/SQL 프로그래밍
  • 링크

    • Connor McDonald
    • Frits Hoogland
    • Jonathan Lewis
    • Julian Dontcheff
    • Julian Dyke
    • Kun Sun
    • Maria Colgan
    • Martin Bach
    • Mike Dietrich
    • Tanel Poder
  • 공지사항

  • 인기 글

  • 태그

    12c
    19c
    21c
    23ai
    case study
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
정희락
스키마 권한
상단으로

티스토리툴바