oracle授权继承,Oracle用户权限 -- 新建用户权限继承另一用户的权限

题记:今天要为监控服务器I2000在现网数据库中新建用户,要求该用户的权限与数据库已经存在的某一用户的权限一致!这里提供了我的

题记:今天要为监控服务器I2000在现网数据库中新建用户,要求该用户的权限与数据库已经存在的某一用户的权限一致!这里提供了我的做法,方法应该不是很好,不知道哪位大侠有更好的方法,希望给予指教,,谢谢!

实验:

要求:新建用户i2ksnmp的权限要和数据库已经存在的DBSNMP用户的权限一样。

1. 创建新用户i2ksnmp

create user i2ksnmp identified by i2ksnmp;

2. 查看DBSNMP用户的所有系统权限

select privilege from dba_sys_privs where grantee='DBSNMP'

union

select privilege from dba_sys_privs where grantee in (select granted_role from dba_role_privs where grantee='DBSNMP' );

如下,得到DBSNMP用户的所有系统权限:

PRIVILEGE

----------------------------------------

ADVISOR

ANALYZE ANY

ANALYZE ANY DICTIONARY

CREATE JOB

CREATE PROCEDURE

CREATE SESSION

CREATE TABLE

MANAGE ANY QUEUE

SELECT ANY DICTIONARY

UNLIMITED TABLESPACE

3. 然后将上面的权限都赋予新建用户即可

比如:

grant ANALYZE ANY DICTIONARY to i2ksnmp;

附加:

这里简单的整合了上面的方法:

set feedback off heading off verify off trimspool off

set pagesize 0 linesize 200

define user=test ---> 这里是新建用户名

select 'grant '||privilege||' to &user;' from dba_sys_privs where grantee = 'DBSNMP'

union

select 'grant '||privilege||' to &user;' from dba_sys_privs where grantee in (select granted_role from dba_role_privs where grantee = 'DBSNMP');

然后将上面打印在屏幕上的拷贝执行就可以了。

logo.gif

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值