使用product_user_profile,可以限制访问SQLPLUS和SQL命令,也可以限制访问PLSQL语句。
在创建数据库后,应该执行$ORACLE_HOME/sql/admin目录下的pupbld.sql文件,且必须以SYSTEM用户身份运行。此脚本将建立product_user_profile表。
如果需要在SQLPLUS中限制某些用户的回话,system用户必须明确地将限制语句插入到product_user_profile表中。
如何使用product_user_profile表防止用户usrename删除,插入,更新数据库中的数据:
insert into product_user_profile
values
('SQL*PLUS','USERNAME','INSERT',NULL,NULL,NULL,NULL,NULL);
insert into product_user_profile
values
('SQL*PLUS','USERNAME','DELETE',NULL,NULL,NULL,NULL,NULL);
insert into product_user_profile
values
('SQL*PLUS','USERNAME','UPDATE',NULL,NULL,NULL,NULL,NULL);
如果用户username想要删除表中数据时,尤其是username模式下的test表,会出现SP2-0544:invaild command:delete.
如果先给username这个授权则,只要把product_user_profile表中的username对应的delete条目删除即可。