ORCLE数据库用户、权限、角色管理

PS:中括号表示可选项。

ORACLE 用户管理

1.创建用户

CREATE USER username   --用户名

IDENTIFIED BY password --密码

[ACCOUNT LOCK|UNLOCK]  --表示用户是否锁定状态

[PASSWORD EXPIRE]      --表示密码在登录后马上失效

示例:CREATE USER test IDENTIFIED BY test ACCOUNT LOCK PASSWORD EXPIRE; (创建完成后并不能马上登录,需赋予session权限)

2.修改用户

ALTER USER username   --用户名

[IDENTIFIED BY password] --密码

[ACCOUNT LOCK|UNLOCK]  --表示用户是否锁定状态

[PASSWORD EXPIRE]      --表示密码在登录后马上失效

示例: ALTER USER test ACCOUNT UNLOCK;

3.删除用户

DROP USER name [CASCADE] --如果用户拥有数据库对象,就必须使用cascade关键字。

ORACLE 权限管理

1.权限的概念与作用  

表示:权利的责任范围;系统中设置的安全规则或者安全策略。

2.权限的分类  

1)系统权限:能否在数据库上完成某个动作;例如创建会话,创建表、查询任意表;

2)对象权限:能否在某个数据库对象上完成某种操作;例如:查询emp表,修改dept表。

3.权限的授予与回收   

1)系统权限的授予

GRANT priv TO user|role      [WITH ADMIN OPTION];--是否可以级联授予。

示例:GRANT create session TO test WITH ADMIN OPTION;

授予用户创建会话的权限。--才能连接数据库。      此时test可以连接到数据库,同时也可以授权其他用户的会话权限。

2)系统权限的回收

REVOKE priv FORM user|role;

示例:REVOKE create session FROM test;      PS:系统权限的授予有级联,回收却没有级联收回。

4.对象权限的授予与回收。   

1)对象权限的授予:

GRANT priv [(col,...)] ON object TO user|role [WITH GRANT OPTION];

示例:用system用户创建了表 t(id)。

GRANT select,update(t) ON system.t to test2 with grant option;     然后用test2 登录后就可以查询和更新t表。

select * from system.t ;

2)对象权限的回收:     REVOKE priv[(col,...)] ON object FROM user|role;

示例:REVOKE update on system.t FROM tets2;    //回收update权限的时候,收回权限只能收回整个表的update权限。     注意:对象权限的回收是级联的,即如果此时test2已将权限再次分配给test1.那么test1的权限也会被收回。

ORACLE 角色管理

1.角色的概念与作用  

本质上是权限的集合;用于简化权限的管理。

2.角色的创建于删除  

1)角色创建: CREAET ROLE role;

示例:创建一个“员工”角色;     CREATE ROLE employee;

2)删除角色: DROP ROLE role;     DROP REOLE  employee;

3.角色上的权限授予与回收(与用户权限的授予与回收类似)

1)系统权限的授予:

GRANT pirv TO role [WITH ADMIN OPTION];

示例:授予角色 创建session的权限。(所有与角色关联的用户都拥有该权限。)

GRANT create session TO employee with admin option;

2)系统权限的回收:

REVOKE priv FROM role;

示例:回收角色 创建session的权限。(所有与角色关联的用户都失去该权限。)

REVOKE create session FROM employee;

3)对象权限的授予:

GRANT [priv(col...)] ON object TO role;

示例:将system的表t3的查询权限授予employee角色。   GRANT select ON system.t3 TO employee;

4)对象权限的回收:   REVOKE [priv(col...)] ON object FROM role;   示例:将system表t3的查询权限收回。

REVOKE select ON SYSTEM.T3 FROM employee;

4.用户与角色关联(用户上授予角色)  

GRANT role TO user;  示例:将test1,test2关联角色employee;

GRANT employee TO test1,test2;

PS:经测试:如果在授予角色之前用户已登录,则需要重新登录后角色对应的权限才能生效。

5.用户与角色取消关联(用户上回收角色)

REVOKE role FROM user;  示例:将用户test1,test2与角色employee取消关联。

PS:经测试:如果在回收角色之前用户已登录,则需要重新登录后角色对应的权限才能收回。

时间: 2024-08-27 11:50:30

ORCLE数据库用户、权限、角色管理的相关文章

【转载】SQL Server 2005数据库用户权限管理的设置

SQL Server 2005数据库中,我们可以设置每个用户对应的权限,以提高数据库的安全性.这类用户权限设置的应用非常广泛.比如设置某个用户访问某个表的权限,甚至是CRUD的权限,更小粒度的还可以去到某几个字段的访问权限等等.其实这一设置过程是很简单的,接下来就让我们来一起学习吧. 一.操作步骤 1. 首先进入数据库级别的[安全性]-[登录名]-[新建登录名] (图1:新建登录名) 2. 在[常规]选项卡中,如下图所示,创建登陆名,并设置默认的数据库. (图2:设置选项) 3. 在[用户映射]

SQL SERVER 2008 服务器登录名、角色,数据库用户、角色、架构知识点总结

SQL SERVER 2008 服务器登录名.角色,数据库用户.角色.架构的关系可以用下面一张图表示: 用例过程如下: 新建服务器登录名: 登录名角色选定: 新建数据库DB1: 然后新建数据库架构Schema1 再新建数据库用户名  User1 服务器登录名属于某组服务器角色:服务器登录名需要于数据库的用户映射后才拥有操作数据库的权限数据库用户属于某组数据库角色以获取操作数据库的权限数据库角色拥有对应的数据库架构,数据库用户可以通过角色直接拥有架构 服务器角色 public sysadmin--

Linux用户权限及管理介绍

Linux用户权限及管理相关介绍.Linux的哲学思想:一切皆文件,目录也被看成文件,为了自己创建的文件不被他人查看及使用或删除,从而有了权限的概念,对每个文件赋予权限,定制此文件对谁开放,谁可以查看或使用:我们在命令行使用ll命令时查看某个文件或目录时得到的信息中[[email protected] ~]# ll?drwxr-xr-x 2 root root 6 Jul 19 09:21 test-rw-r--r-- 1 root root 0 Jul 19 09:11 test.txt.其中

Navicat连接Oracle数据库用户权限问题

解决Navicat连接Oracle数据库用户权限问题: 第一步:在cmd窗口运行[sqlplus] 第二步:输入Oracle的用户名和口令连接Oracle数据库. 第三步:执行授权代码 [grant dba to 用户名;] 第四部:执行[grant all privileges to 用户名;] 原文地址:https://www.cnblogs.com/lyang-a/p/11638494.html

SQL SERVER 2008 服务器登录名、角色、数据库用户、角色、架构的关系

sql server登录名.服务器角色.数据库用户.数据库角色.架构区别联系 1.一个数据库用户可以对应多个架构(架构是表容器).架构里面包含的是数据库表. 2.一个数据库角色有可能涉及多个架构.数据库角色对应的是权限. 3.一个用户对应一个数据库角色. 4.登录名与数据库用户在服务器级别是一对多的:在数据库级别是一对一的. 服务器登录名:指有权限登录到某服务器的用户: 服务器角色:指一组固定的服务器用户,默认有9组: 登录名一定属于某些角色,默认为public 服务器角色不容许更改 登录后也不

数据库用户权限

ALTER ANY PROCEDURE CREATE ANY PROCEDURE CREATE PROCEDURE DEBUG ANY PROCEDURE DROP ANY PROCEDURE EXECUTE ANY PROCEDURE 只需要授予存储过程的DEBUG权限给某个用户,就可以实现只授予用户查看存储过程定义的权限,而限制用户修改.执行存储过程.从而达到只授权用户查看存储过程定义的权限. --查看当前会话用户具有的角色权限: select * from session_roles; -

Office365混合部署之用户权限(角色)分配

对于一个企业管理员来说对于用户的权限分配是必不可少的,那我们今天主要说说作为一个Office365企业管理员来说如何管理用户的权限: 正常我们一般分配权限是按照角色来进行权限划分的,在office365上也是一样的:我们登陆到Office365管理页面 活动用户---双击打开用户 我们就可以看见:最主要的两个信息:一个是产品的许可证,其实就是具有云服务的那些应用的权限:另外一个就是角色信息,是否具备有管理员权限 我们编辑用户的角色:可以看见默认用户没有管理员权限:有全局管理员和自定义管理员 全局

springboot 使用数据库用户权限登录

1.加入spring security的支持包, <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> 2.主要实现两个接口,一个是UserDetails 用户详细信息,一个是UserDetailsService用户信息服务 public c

AWS WorkDocs对于用户权限的管理

在AWS web管理界面创建好WorkDocs后,却发现只有简单的管理界面,无法直接管理用户权限,查了文档说可以在Admin Control Panel的地方设定,可是页面上却无法找到这个选项. 然后我在打开我创建的WorkDocs网页界面,在我的用户账户下面才发现这个选项. 点击进入后,发现管理功能还是挺丰富的. 原文地址:https://blog.51cto.com/helpdesk/2437276