关于ORACLE用户赋权

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于ORACLE用户赋权相关的知识,希望对你有一定的参考价值。

在一个数据库下用户A如何一次性赋予B所有表查询权限?

参考技术A spool grant_b2a.lst

select 'grant select on b.'||table_name||' to a;' from dba_tables where owner='B';
spool off
@grant_b2a.lst追问

是直接赋权,比如A用户建一张表不需要在赋权B用户就可以直接访问

追答

B用户不需要赋权就能访问别的用户新建的表, 那B用户就具备很大的权限了,
干脆给B用户DBA或select any table的权限就可以了,但是这样一来,B用户不仅可以访问A下在的所有表数据,还能访问任何用户下的表.

另外赋个权其实也不费事的, 从管理和安全的角度看, 如果还有其它用户也需要访问A用户的表,建议操作是:
可以先建一个ROLE, 然后把A用户的所有表的查询权限赋予该角色, 再把该角色赋予B用户等.
以后维护时,只需给角色赋新表的查询权限就可以了.

参考技术B grant select any table to user追问

是直接赋权,比如A用户建一张表不需要在赋权B用户就可以直接访问

追答

用这个授权一次就可以了

以上是关于关于ORACLE用户赋权的主要内容,如果未能解决你的问题,请参考以下文章

怎么给oracle数据库创建用户,并赋权限

怎么给oracle数据库创建用户,并赋权限

怎么给oracle数据库创建用户,并赋权限

oracle创建,查看用户和角色,用户角色赋权

oracle 创建用户并且赋给,刚创建的用户管理员权限。

oracle 新建的用户很多函数用不了,如何赋权?例如10g某个用户用不了STRING_AGG,STRING_AGG