Oracle创建用户角色


正在维护一个CS结构的应用,每次创建应用的用户时都需要创建对应的数据库schema,并且需要赋予其相应的对象权限和角色。操作很不方便,所以专门创建了一个角色,过程如下:

1、创建角色

SQL> create role TESTROLE not identified;

Role created

其中,not identified是说在设置角色生效或者无效时,不需要交进行验证

2、将对象权限赋予刚刚创建的角色

SQL> grant select on ***_table1 to TESTROLE;

Grant succeeded

SQL> grant select on ***_table2 to TESTROLE; 

Grant succeeded

SQL
> grant select on ***.table3 to TESTROLE;

Grant succeeded

3、将其他角色赋予该角色

SQL> grant resource to TESTROLE;

Grant succeeded

SQL> GRANT CONNECT TO TESTROLE;

Grant succeeded

4、查看该新建角色是否包含相应的对象权限和角色

SQL> select * from dba_tab_privs where grantee = 'TESTROLE';
SQL> select * from dba_role_privs where grantee = 'TESTROLE';

其中,dba_tab_privs查看的是该角色中赋予的对象的相关权限,比如第二步中的针对某些表的权限;

dba_role_privs查看的是该角色中赋予的其他角色,如第三步中的resource, connect;

还有一个是dba_sys_privs查看的是赋予该角色的系统的相关权限。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM