오라클 DB에서 특정 계정은 특정 스키마만 접근 가능하도록 제한 설정이 가능할까요? 2

by 나나 [DB 기타] [2022.10.20 15:41:25]


DB 툴에서 DB 연결을 하면 모든 스키마들이 보여지는데 특정 계정은 특정 스키마만 보여지도록 권한 설정을 할 수 있는 방법이 있을까요?

by 포동푸우 [2022.10.20 15:58:26]

DB 툴에서 권한설정을 하지 않고, 특정 스키마의 오브젝트들만 볼 수 있는 계정을 DBA 분께 받으시면 될 것 같습니다. 

권한은 테이블 목록 등 메타정보를 볼 수 있는 권한과 실제 테이블의 데이터를 볼 수 있는 권한이 분리 되어 있습니다. 


by 나나 [2022.10.20 16:54:53]

권한을 제가 설정해야해서요 ㅠ

dba 권한 해제해서 테이블, 뷰, 프로시저 못보게는 해두었는데 디비버로 연결하면 스키마들이 쭉 보이는데 본인 스키마만 볼 수 있도록 할 수 있는 방법은 없을까요?


by 포동푸우 [2022.10.21 10:30:20]

Oracle DB 에서는 추가적인 권한을 주지 않으면 기본적으로 본인 Schema 의 Object 들만 볼 수 있습니다. 

- 할당된 권한 내역 확인 : dba_role_privs, dba_sys_privs, dba_tab_privs 등의 view 를 확인

- 일반 User 가 가지는 기본 권한 : connect, resource role 

- 만약 A User 가 select any dictionary privilege 를 가지고 있으면 본인 포함 모든 schema 의 object 가 다 보이고, select any table 이란 privilege 를 가지고 있으면 모든 table 에 대한 value select 가 가능합니다. any 가 가지는 의미가 모든 schema 등 입니다. 

 

위 권한 내역 view 들 에서 User 가 권한을 조정하시면 될 것 같습니다. 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입