C/C++教程

Oracle 用户及权限管理

本文主要是介绍Oracle 用户及权限管理,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

引言:学会在Oracle中如何创建表空间后,就要学会怎么去给用户分配这些表空间的使用,即给用户使用、查看的权限。

Oracle用户管理

1.创建用户

create user username identified by password;

2.创建并给用户分配表空间

create user username
identified by 1223456
default tablespace tablespacename
temporary tablespace temp_tablespacename;

3.删除用户

# 用户下没有任何对象
drop user xxx
# 用户下存在对象,必须加cascade删除用户下所有对象。
drop user xxx cascade

4.锁定/解锁用户(可以不删除用户,拒绝用户连接)

alter user username account lock/unlock;

5.修改用户密码

alter user username identified by password;

6.查看当前用户的相关信息(用户名、默认表空间…)

select * from user_users;

一个用户可以使用一个或多个表空间,一个表空间也可以供多个用户使用。用户与表空间没有隶属关系。

权限(privilege)管理

用户权限有系统权限和对象权限两种。系统权限即数据库的使用权限,只能由DBA用户(sys,system)授出。用户权限包括:

  • dba:拥有全部特权,是系统最高权限。
  • resource:拥有访问数据库对象的权限。
  • connect:拥有连接数据库的权限,但不可以访问数据库对象。

对象权限是某种权限用户对其他用户的表或视图的存取权限,它允许用户对一些特定的对象,进行更新、插入等操作。对象权限包括:

  • select ,update,insert ,alter ,alter ,index,delete,all(所有权限),execute(执行存储过程的权限)

1.给用户授予系统权限 √ connect,resource…

grant privilege to username

2.给用户授予对象权限 √select ,update,insert…

grant select on tablename to username

3.撤销用户权限

# 撤销系统权限
revoke connect from username;
# 撤销对象权限
revoke select on tablename from username

4.给用户授予系统权限并拥有授予其他用户的权利。例如授权给A ,A可以授权给B。撤销A的权限后,B不会受到影响

# with admin option只能用于系统权限授权
grant privilege to username with admin option

5.给用户授予对象权限并拥有授权给其他用户的权利。撤销权限级联,如给A授权后,A授权给B。撤销A的权限后,B的权限也会撤销。注意不能直接撤销B的权限!

# with grant option只能用于给对象权限授权
grant select on tablename to username with grant option

用户角色
角色就是一组权限,更加方便权限管理。例如给多个用户

这篇关于Oracle 用户及权限管理的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!