博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
oracle 用户 角色 权限
阅读量:4576 次
发布时间:2019-06-08

本文共 4845 字,大约阅读时间需要 16 分钟。

SQL> create user user1 identified by user1;

用户被创建
SQL> create user user2 identified by user2;
用户被创建
SQL> create role temp;
角色被创建

SQL> grant connect to temp with grant option;(预定义角色赋给自定义角色)

grant connect to temp with grant option
ORA-01939: 只能指定 ADMIN OPTION
SQL> grant connect to temp with admin option;
授予成功

SQL> grant temp to user1 with grant option;(自定义角色赋予用户)
grant temp to user1 with grant option
ORA-01939: 只能指定 ADMIN OPTION

SQL> grant temp to user1 with admin option;

授予成功

SQL> conn user1/user1;(user1可以登录)

已连接到 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
已连接为 user1

SQL> conn system/cqstc;

已连接到 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
已连接为 system
SQL> revoke connect from temp;
撤回成功

SQL> conn user1/user1;(user1不可以登陆,但有temp的角色,角色temp没有角色)

没有登录

SQL> select * from dba_role_privs where grantee='USER1';

GRANTEE                        GRANTED_ROLE                                       ADMIN_OPTION         DEFAULT_ROLE
------------------ ------------------------------                                   -----------               ------------
USER1                                  TEMP                                                          YES                         YES

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=

已连接到 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0

已连接为 system
SQL> SHOW user;
User is "system"
SQL> grant connect to temp with admin option;
授予成功

SQL> select * from dba_role_privs where grantee='USER1';

GRANTEE                        GRANTED_ROLE                   ADMIN_OPTION DEFAULT_ROLE
------------------------------ ------------------------------ ------------ ------------
USER1                          TEMP                           YES          YES
SQL> select * from dba_ROLE_privs where grantee='TEMP';
GRANTEE                        GRANTED_ROLE                   ADMIN_OPTION DEFAULT_ROLE
------------------------------ ------------------------------ ------------ ------------
TEMP                           CONNECT                        YES          YES
SQL> select * from dba_SYS_privs where grantee='TEMP';
GRANTEE                        PRIVILEGE                                ADMIN_OPTION
------------------------------ ---------------------------------------- ------------

SQL> select * from dba_SYS_privs where grantee='USER1';
GRANTEE                        PRIVILEGE                                ADMIN_OPTION
------------------------------ ---------------------------------------- ------------
SQL> select * from dba_SYS_privs where grantee='CONNECT';
GRANTEE                        PRIVILEGE                                ADMIN_OPTION
------------------------------ ---------------------------------------- ------------
CONNECT                        CREATE SESSION                           NO

 //都没有对象权限

 SQL> select * from dba_TAB_privs where grantee='CONNECT';

GRANTEE                        OWNER                          TABLE_NAME                     GRANTOR                        PRIVILEGE                                GRANTABLE HIERARCHY
------------------------------ ------------------------------ ------------------------------ ------------------------------ ----------------------------------------
SQL> select * from dba_TAB_privs where grantee='USER1';
GRANTEE                        OWNER                          TABLE_NAME                     GRANTOR                        PRIVILEGE                                GRANTABLE HIERARCHY
------------------------------ ------------------------------ ------------------------------ ------------------------------ ----------------------------------------
SQL> select * from dba_TAB_privs where grantee='TEMP';
GRANTEE                        OWNER                          TABLE_NAME                     GRANTOR                        PRIVILEGE                                GRANTABLE HIERARCHY
------------------------------ ------------------------------ ------------------------------ ------------------------------ ----------------------------------------

 SQL> conn user1/user1;(user1可以登录,有temp角色)

已连接到 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
已连接为 user1

SQL> grant connect to user2;

授予成功
SQL> conn user2/user2;(user2可以登录)
已连接到 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
已连接为 user2

SQL> select * from user_role_privs;

USERNAME                       GRANTED_ROLE                   ADMIN_OPTION DEFAULT_ROLE OS_GRANTED
------------------------------ ------------------------------ ------------ ------------ ----------
USER2                          CONNECT                        NO           YES          NO
SQL> conn system/cqstc;
已连接到 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
已连接为 system
SQL> revoke connect from temp;
撤回成功
SQL> conn user1/user1;(user1不可以登录)
没有登录
SQL> conn user2/user2;(user2可以登录)
已连接到 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
已连接为 user2

SQL> conn system/cqstc;

已连接到 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
已连接为 system
SQL> revoke temp from user1;
撤回成功
SQL> conn user2/user2;(user2可以登录)
已连接到 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
已连接为 user2
SQL> conn user1/user1;(USRE1不可以登陆)
没有登录
SQL> conn system/cqstc;
已连接到 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
已连接为 system
SQL> select* from dba_role_privs where grantee='USER1';
GRANTEE                        GRANTED_ROLE                   ADMIN_OPTION DEFAULT_ROLE
------------------------------ ------------------------------ ------------ ------------
SQL> select* from dba_role_privs where grantee='TEMP';
GRANTEE                        GRANTED_ROLE                   ADMIN_OPTION DEFAULT_ROLE
------------------------------ ------------------------------ ------------ ------------
SQL> select* from dba_role_privs where grantee='USER2';
GRANTEE                        GRANTED_ROLE                   ADMIN_OPTION DEFAULT_ROLE
------------------------------ ------------------------------ ------------ ------------
USER2                          CONNECT                        NO           YES
SQL>

转载于:https://www.cnblogs.com/MR-Guo/p/3511993.html

你可能感兴趣的文章
搜索样式键盘的Return按钮是否可点击
查看>>
scrapy抓取中国新闻网新闻
查看>>
吴裕雄--天生自然 PHP开发学习:面向对象
查看>>
吴裕雄 python 神经网络——TensorFlow 输入数据处理框架
查看>>
[ckeditor系列]CKEditor 3.6 入门
查看>>
linux基础命令
查看>>
Socket网络编程--简单Web服务器(4)
查看>>
C++中函数模板的深入理解
查看>>
leecode第二十二题(括号生成)
查看>>
增量式PID的matlab实现
查看>>
mybatis generatorConfig.xml生成配置文件及三种运行方式
查看>>
poj 3264 Command Network(最小树形图)
查看>>
Ruby中的设计模式
查看>>
typedef在C和C++的区别?
查看>>
C#:文件创建、复制、移动、删除
查看>>
spring framework三个版本的下载包区别
查看>>
在同一页面中显示多个echart图表
查看>>
Android播放图片动画
查看>>
Unity时钟定时器插件——Vision Timer源码分析之一
查看>>
你能分析出这段函数的运行结果吗?
查看>>