温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Sec_P1 创建和授予角色

发布时间:2020-07-06 15:55:23 来源:网络 阅读:485 作者:PengChonggui 栏目:关系型数据库


Sec_P1 创建和授予角色


SQL>connect system/oracle

#创建两个角色

SQL>createrole  usr_role;

SQL>createrole mgr_role;

 

#为这些角色授予一些权限,并将usr_role授予mgr_role;

SQL>grantcreate session to usr_role;

SQL>grantselect on sales.t1 on usr_role;

SQL>grantusr_role to mgr_role with admin option;

SQL>grantall on sales.t1 to mgr_role;

 

SQL>connsystem/oracle

SQL>grantmgr_role to webapp;

 

SQL>connwebapp/oracle;

 

SQL>grantusr_role to accounts ;

SQL>insertinto sales.t1 values(sysdate);

SQL>commit;

 

#拥有查询权限,但是没有插入权限。

SQL>connaccounts/oracle

SQL>Select* from sales.t1;

SQL>insertinto sales.t1 values(sysdate);

--ORA-01031:insufficient privileges

 

#accounts的权限进行调整,使其可以在默认情况下登录,但无其他权限。

SQL>connsystem/oracle

SQL>grantconnect to accounts;

SQL>alteruser default role  connect;

 

#演示角色的启用和禁用

SQL>connaccounts/oracle

SQL>select* from sales.t1;

--ORA-00942:table or veiw does not exist

 

SQL>setrole usr_role;

SQL>select* from sales.t1;  --It's OK;

 

#查看两个新角色对于的查看权限

SQL>select * from dba_role_privs

Wheregranted_role in ('USR_ROLE', 'MGR_ROLE');

SQL>selectgrantee,owner, table_name,privilege,grantable

Fromdba_tab_privs where grantee in ( ' USR_ROLE', 'MGR_ROLE')

Union all

Selectgrantee, to_char(null), to_char(null),privilege,admin_option

Fromdba_sys_privs  where grantee in ('USR_ROLE', 'MGR_ROLE')

Order bygrantee;


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI