문제 발생 : system을 제외한 다른 유저의 특정 sql문을 사용하지 못하게 하고 싶을 때
해결 : PRODUCT_USER_PROFILE 이용
system 계정으로 ?/sqlplus/pupbld.sql
sql> insert into PRODUCT_USER_PROFILE(product,userid,attribute,char_value)
values('SQL*Plus','%','HOST','DISABLED');
=> 모든 유저의 host 사용을 막아버림
'%'란에 username 을주면 특정 USER 또한 막을 수 있습니다.
결과 : SQL> conn rtis/rtis
Connected.
SQL> !ls
SP2-0544: Command "! (HOST)" disabled in Product User Profile
SQL> host ls
SP2-0544: Command "host" disabled in Product User Profile
보통 권한을 다 뺏어도 drop table은 되는데...
이것을 막을 때 유용하게 쓰일꺼 같음
예를 들어 select만 되게 하고 싶은 유저를 생성하고 싶을 때
참고 OTN https://forums.oracle.com/forums/thread.jspa?threadID=470229
'[ORACLE] > Security' 카테고리의 다른 글
Oracle 특정 IP만 접속을 허용하고 싶을 때 (0) | 2012.01.12 |
---|