vault创建领域不让sys/system访问,但是可以让其他用户访问

环境:

OS:Centos 7

DB:11.2.0.4

 

1.dbvmgr用户登录创建2个新用户

SQL> connect dbvmgr/Oracle#123
Connected.
SQL> create user hxl100 identified by oracle;
SQL> create user hxl200 identified by oracle;

 

2.sys用户登录给新用户授权

复制代码
SQL> connect / as sysdba
Connected.
SQL> grant create session,resource to hxl100;

Grant succeeded.

SQL> grant create session,resource to hxl200;

Grant succeeded.
复制代码

 

3.使用用户hxl100登录创建表并写入数据

复制代码
SQL> connect hxl100/oracle
Connected.
SQL> create table tb_100(id number,name varchar2(32));

Table created.

SQL> insert into tb_100 values(1,'name1');

1 row created.

SQL> insert into tb_100 values(2,'name2');

1 row created.

SQL> commit;

Commit complete.

SQL> select * from tb_100;

        ID NAME
---------- --------------------------------
         1 name1
         2 name2
复制代码

 

4.下面我们创建领域,让hxl200用户可以访问hxl100下的表,但是sys和system不能访问

 创建领域

 

创建领域保护对象

 这里领域的保护对象是用户hxl100下的所有对象

 

领域授权

这里要授权2个,一个是owner,目的是授权该账号下的对象给其他用户相应的权限,另外一个是参与者,我们这里的参与者就是hxl200

a.owner授权

 

b.参与者授权

 

5.授权查询权限给hxl200用户 

 

SQL> connect hxl100/oracle
Connected.
SQL> grant select on tb_100 to hxl200;

Grant succeeded.

 

6.验证
SQL> connect / as sysdba
Connected.
SQL> select * from hxl100.tb_100;
select * from hxl100.tb_100
*
ERROR at line 1:
ORA-01031: insufficient privileges


SQL> connect hxl200/oracle
Connected.
SQL> select * from hxl100.tb_100;

ID NAME
---------- --------------------------------
1 name1
2 name2

 

posted @   slnngk  阅读(52)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2019-10-15 mysql排名
2019-10-15 redis实时同步工具redis-shake
点击右上角即可分享
微信分享提示