oracle给用户分配特定用户下特定表的只读权限

以下是测试过程,测试环境oracle 11.2.0.3 linux平台:
模拟将HR用户下的employees表的只读权限非配给test_ycr
创建用户:
SQL> create user test_ycr identified by oracle;
SQL> grant create session to test_ycr;
Grant succeeded.
此时用户无法选择employee表:
SQL> conn test_ycr/oracle;
Connected.
SQL> select employee_id from hr.employees;
select employee_id from hr.employees
                           *
ERROR at line 1:
ORA-00942: table or view does not exist
给test_ycr用户赋予employees表的只读权限后实现只读:
SQL> conn / as sysdba
Connected.
SQL> grant select on hr.employees to test_ycr;
Grant succeeded.
SQL> conn test_ycr/oracle
Connected.
SQL> select employee_id from hr.employees where employee_id=206;
EMPLOYEE_ID
-----------
        206
但是无法修改:
SQL> update hr.employees set employee_id=333 where employee_id=206;
update hr.employees set employee_id=333 where employee_id=206
          *
ERROR at line 1:
ORA-01031: insufficient privileges
功能实现。
posted @ 2017-11-11 10:29  ClarkYu  阅读(3648)  评论(0编辑  收藏  举报