【Oracle】加密角色的使用

之前不是很明白加密角色的作用,今天查了一些资料发现加密角色可以以非default角色授予一个用户,只有在需要的时候再进行启用。一些比较敏感的权限在平时的工作中基本用不到,为了防止误操作完全可以把这些权限单独授予一个角色,只有在有需要的时候进行启用。还有就是对同一用户组的用户可以有一些权限上的分割,不知道加密角色密码的人无法启用这方面的权限。

下面进行实验:

 

首先创建两个角色r_csr_select,并且授予相应的权限:

SYS@ORCL>create role r_cs;    

 

Role created.

 

SYS@ORCL>grant create session to r_cs;

 

Grant succeeded.

 

SYS@ORCL>create role r_select identified by r_select;

 

Role created.

 

SYS@ORCL>grant select on dba_objects to r_select;

 

Grant succeeded.

创建用户test,将r_csr_select都授予它,并将r_cs置为default roledefault role也可以有多个):

SYS@ORCL>create user test identified by test;

 

User created.

 

SYS@ORCL>grant r_cs,r_select to test;

 

Grant succeeded.

 

SYS@ORCL>alter user test default role r_cs;

 

User altered.

这时候我们通过test用户连接后查询dba_objects的数据:

SYS@ORCL>conn test/test 

Connected.

EST@ORCL>select count(*) from dba_objects;

select count(*) from dba_objects

                     *

ERROR at line 1:

ORA-00942: table or view does not exist

会发现无法查询,这时候我们启用r_select角色,然后再进行查询:

TEST@ORCL>set role r_select identified by r_select;

 

Role set.

 

TEST@ORCL>select count(*) from dba_objects;

 

  COUNT(*)

----------

     50327

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值