文档章节

创建使用口令的角色,并分配给用户

 突突突酱
发布于 01/08 17:10
字数 549
阅读 7
收藏 0

 

 

创建使用口令的角色,并分配给用户

1.创建使用口令的角色

CREATE ROLE role_name

[NOT IDENTIFIED(默认) | IDENTIFIED BY password | EXTERNALLY |GLOBALLY];

sql>create role manager identified by oracle;

2.创建后查看角色

SQL> select role,password_required,AUTHENTICATION_TYPE from dba_roles where role='MANAGER';

ROLE PASSWORD AUTHENTICAT

--------

MANAGER YES PASSWORD

3.赋予系统权限

SQL> GRANT CREATE TABLE,CREATE VIEW,CREATE SESSION TO manager WITH ADMIN OPTION;

Grant succeeded.

4.赋予对象权限

SQL> GRANT SELECT ,INSERT ,UPDATE ON hr.employees TO manager;

Grant succeeded.

5.查看角色的系统权限(role_sys_privs)

SQL> SELECT * FROM role_sys_privs WHERE role = 'MANAGER';

ROLE PRIVILEGE ADM

---

MANAGER CREATE SESSION YES

MANAGER CREATE TABLE YES

MANAGER CREATE VIEW YES

6.查看角色的对象权限(role_tab_privs)

SQL> SELECT * FROM role_tab_privs WHERE role = 'MANAGER';

ROLE OWNER TABLE_NAME COLUMN_NAME PRIVILEGE GRA

---

MANAGER HR EMPLOYEES UPDATE NO

MANAGER HR EMPLOYEES INSERT NO

MANAGER HR EMPLOYEES SELECT NO

6.创建用户

sql>create user sztech identified by sztech;

7.将角色赋予用户(grant):

语法:

GRANT role_name [, role_name, ...]

TO user_name | role | PUBLIC [, user_name | role | PUBLIC, ...]

[WITH ADMIN OPTION];

sql>GRANT manager TO sztech;

8.查看角色授予了哪些用户(dba_role_privs)

SQL> SELECT * FROM dba_role_privs WHERE granted_role = 'MANAGER';

GRANTEE GRANTED_ROLE ADM DEF

--- ---

SYS MANAGER YES YES

SZTECH MANAGER NO YES

9.以sztech用户登陆系统

SQL> conn sztech/sztech

ERROR:

ORA-01045: user SZTECH lacks CREATE SESSION privilege; logon denied

这个时候,无法登陆系统,权限无效

10.单独授予创建session的权限给sztech

sql>grant connect to sztech;

SELECT * FROM dba_role_privs WHERE grantee = 'SZTECH';

11.查看获得的权限

SQL> SELECT * FROM dba_role_privs WHERE grantee = 'SZTECH';

GRANTEE GRANTED_ROLE ADM DEF

--- ---

SZTECH CONNECT NO NO

SZTECH MANAGER NO YES

12.设置默认角色

sql>ALTER USER sztech DEFAULT ROLE all;

再次查看默认权限

SQL> SELECT * FROM dba_role_privs WHERE grantee = 'SZTECH';

GRANTEE GRANTED_ROLE ADM DEF

--- ---

SZTECH CONNECT NO YES

SZTECH MANAGER NO YES

13.查看用户拥有哪些权限

SQL> CONN sztech/sztech;

SQL> select * from session_privs;

PRIVILEGE

 

CREATE SESSION

目前看,权限只有connect中的权限,而manger中的权限没有,需要单独激活.

14.激活角色

SQL> set role connect,manager identified by oracle;

注意,这里角色manager有口令,所以,需要identified by oracle.

15.查看当前用户sztech权限

SQL> select * from session_privs;

PRIVILEGE

 

CREATE SESSION

CREATE TABLE

CREATE VIEW

权限启用成功.

© 著作权归作者所有

共有 人打赏支持
粉丝 1
博文 84
码字总数 82897
作品 0
私信 提问

暂无文章

html5代码书写规范

DOCTYPE 页面文档类型统一使用HTML5 DOCTYPE. <!DOCTYPE html> Meta字符集设置 声明方法遵循HTML5的规范, Meta文件使用 "UTF-8" 浏览器显示编码指定. <meta charset="utf-8"> 手机端页面添......

niuhongxia
27分钟前
3
0
怎么修改 phpstorm 中注释的开始位置

PHPStorm 版本:v2018.3 如下图设置:

whoru
36分钟前
2
0
Android Arcface人脸识别sdk使用工具类

public class FaceUtil{ private static final String TAG = FaceUtil.class.getSimpleName(); private static FaceUtil faceInstance = null; public FaceDB mFaceDB; pri......

是哇兴哥棒棒哒
44分钟前
2
0
JFreeChart中文API和树形详解

-------------------------------- JfreeChart 中文API -------------------------------- 要想绘制出漂亮的图表,就必须了解图表的构成部分,将图表进行分解成N个部分。 然后再对每一个部分...

喜欢搬砖的农民工
46分钟前
2
0
Android ViewPager

1.PagerAdapter { public int getCount() { return list.size(); } public Object instantiateItem(ViewGroup container, int postion) { container.addView(iv); return iv; } public void ......

Coding缘
48分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部