西大贝de烂笔头

多思考、多总结、勤动笔

导航

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查看的是赋予该角色的系统的相关权限。

posted on 2017-11-22 09:01  西大贝  阅读(1778)  评论(0编辑  收藏  举报