权限管理实训

一、用户管理与应用

1、查看用户与模式

--访问当前数据库的所有用户(执行此语句必须要有dba权限)
select username from dba_users;
--要是没有dba权限则可以执行(但是执行这条语句所返回的结果集,只能是你自己权限范围下所能够看见的)
select username from all_users;
--查看当前链接数据库的用户名
select user from dual;

2、创建用户

create user zzqq identified by 123456;
--"zzqq"  代表用户名 ,"123456" 代表密码

3、给予新用户基本权限  create session ,  create any table

grant create session,create any table to zzqq
--授予新用户能登录到数据库的权限,在任何模式下可以创建表的权限

4、调整用户的密码、锁定状态

--调整用户的密码
alter user zzqq identified by 654321;
--调整用户的锁定状态
----锁定状态
alter user zzqq account lock
----未锁定状态
alter user zzqq account unlock

5、删除用户!!

drop user zzqq cascade;
---这里表示会删除用户的所拥有的所有对象,cascade级联

二、权限管理与应用

1.权限分为系统权限和对象权限

系统权限主要是针对用户的,是系统规定用户使用数据库的权限;

对象权限主要是针对对象如(表或视图等),是用户对于表、视图的读取权限等

系统权限system privilege (创建,修改,删除,备份,授权
CREATE SESSION:允许用户连接到数据库。
CREATE TABLE:允许用户在数据库中创建表。
CREATE VIEW:允许用户创建视图。
CREATE PROCEDURE:允许用户创建存储过程。
ALTER ANY TABLE:允许用户修改任何表的结构。
DROP ANY TABLE:允许用户删除任何表。
BACKUP DATABASE:允许用户备份数据库。
GRANT ANY PRIVILEGE:允许用户授予其他用户任何权限


对象权限object privilege 
SELECT:允许用户查询数据。
INSERT:允许用户向表中插入数据。
UPDATE:允许用户修改表中的数据。
DELETE:允许用户从表中删除数据。
EXECUTE:允许用户执行存储过程或函数。
INDEX:允许用户在表上创建索引。
ALTER:允许用户修改表结构。
REFERENCES:允许用户创建外键约束

2、授予或回收系统权限

--授予权限
grant create table to username
--收回权限
revoke create table from username

3、授予或回收对象权限

--授予权限
grant select on tablename to username
--收回权限
revoke select on tablename from username

4、转交管理权限或收回管理权限(权限传递)with admin option
 

grant create table to userA with admin option
在登录用户A的情况下可以执行
grant create table to userB
这样userB也有了可以创建表的权限,但是userB不能够将自己创建表的权限传递给其他用户
revoke create table from userB --不保留创建表的权限
revoke create table from userB with admin option--不保留可以传递创建表权限的权限,但是任然可以创建表


三、角色管理与应用

1.角色的概念

--role   一系列权限的命名集合,目的是简化权限管理的复杂性(角色是一系列权限的集合)
--ex:  在每次建立一个新用户,都会给予用户相应的权限,如果一次建立多个就要多次赋予,比较繁琐,此时创建角色,如果你需要给多个用户赋予权限,那么可以直接将角色赋给这个用户,那么这个用户就可以有角色的所有权限
--Oracle提供了三种标准角色:connect,resource,dba
--connect,只能用于登录数据库,不能建立数据库结构(创建表,视图,索引,存储过程),不能建立实体,不能够建立表,临时用户
--resource,提供给用户额外的权限,比如可以创建表,视图,索引,过程等等
--dba,管理员,有着所有系统权限,只有DBA才可以创建数据库结构
--权限分为,系统权限和对象权限,系统权限,系统权限主要是针对用户的,是系统规定用户使用数据库的权限;而对象权限主要是针对表或视图等,是用户对于表、视图的读取权限等

1、创建角色 

create role ZQ
--创建角色ZQ

2、将各类权限放入角色

--将系统权限授予用户
GRANT CREATE TABLE, CREATE VIEW TO ZQ WITH ADMIN OPTION;
--with admin option表示允许ZQ这个角色将自己的权限赋给其他角色
--将对象权限授予用户
GRANT SELECT, INSERT ON table_name TO role ZQ;
--table name 表示表名

3、将角色授予某用户

grant ZQ to s224364314



 

  • 25
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值