본문 바로가기

데이터베이스/오라클

[SQL] 객체(Object) 권한 부여/삭제


 이번글은 시스템 권한에 이은 객체(Object) 권한입니다.
객체권한은 주로 SQL 수행 작업과 관련된 것으로 DDL, DML 작업을 할 수 있도록 하는 권한입니다.

관련 있는 권한으로는 다음과 같습니다.
SELECT | ALTER | INSERT | DELETE | UPDATE | INDEX | REFERENCES

 잠시 알고 지나가야 할 부분은 뷰(VIEW)에서는 인덱스 생성과 ALTER 작업이 안된다는 것입니다.

 권한을 부여하는 방법은 시스템 권한 부여 방식과 같습니다.
GRANT 권한 ON 스키마.테이블명 TO 계정;

 다음과 같이 가능합니다.

[실행화면]


 역시나 같은 방식으로 권한 삭제가 가능합니다.
REVOKE 권한 ON 스키마.테이블명 FROM 계정;

기타 권한으로는 다음 세가지가 있습니다.
WITH ADMIN OPTION : 시스템 권한에 한해 그 권한을 가지는 사용자가 다른 사용자에게 권한 부여 가능
WITH GRANT OPTION : 객체 권한에 한해 그 권한을 가지는 사용자가 다른 사용자에게 권한 부여 가능
PUBLIC: 시스템 상의 모든 사용자에게 해당 권한을 부여.

다음과 같이 사용 가능합니다.
SQL> GRANT SELECT ON test.name TO test WITH ADMIN OPTION;

 하지만 위의 세가지 옵션은 잘못된 관리로 이어질 수 있기때문에 잘 쓰이지 않습니다.
저 권한을 부여 받은 사용자가 무분별하게 다른 사용자에게 권한을 주거나, 그러다 큰일납니다.(ㅋㅋ)

시스템 권한 설정과 관련해서 보실 분은 다음 링크를 참고 하시면 되겠습니다.
사용자 계정 생성 및 시스템 권한 설정 보기
 

도움 되셨다면 밑의 추천(손가락 표시)과 댓글 부탁드립니다.