文章目录
关键字
- PUBLIC 全体用户
权限授予与回收
GRANT授权语句
GRANT <权限>[,<权限>]···
ON <对象类型><对象名>[,<对象类型><对象名>]···
TO <用户>[,<用户>]···
[WITH GRANT OPTION];
WITH GRANT OPTION语句,用于允许该授权用户继续授权其他用户。
exm
把查询Student表和修改学生学号的权限授给用户U1,并允许将权限再授给其他用户。
GRANT UPDATE(Sno),SELECT
ON TABLE Student
TO U1
WITH GRANT OPTION;
REVOKE撤权语句
REVOKE <权限>[,<权限>]···
ON <对象类型><对象名>[,<对象类型><对象名>]···
FROM <用户>[,<用户>]···[CASCADE|RESTRICT];
CASCADE为级联选项,若撤销用户X的权限,则从用户X获得权限的其他用户也将被撤权。
exm
把用户U1对SC表的INSERT权限收回
REVOKE INSERT
ON TABLE SC
FROM U1 CASCADE;
创建数据库模式的权限
CREATE USER:
CREATE USER <username> [WITH][DBA|RESOURCE|CONNECT];
说明:
- 只有超级用户可以创建一个新的数据库用户
- 新创建的数据库用户有三种权限:CONNECT、RESOURCE、DBA。
- CREATE USER默认权限为CONNECT,只能访问数据库。
- RESOURCE权限可以创建基本表和视图,称为所创建对象的属主,不能创建模式和用户。
- DBA权限是超级用户。
数据库角色
数据库角色是权限的集合
角色的创建
CREATE ROLE <角色名>
给角色授权
GRANT <权限>[,<权限>]···
ON <对象类型><对象名>
TO <角色>[,<角色>]···
将一个角色授予其他角色或用户
GRANT <角色>[,<角色2>]···
TO <角色3>[,<用户1>]···
[WITH ADMIN OPTION];
WITH ADMIN OPTION属性类似于WITH GRANT。
角色权限的收回
REVOKE <权限>[,<权限>]···
ON <对象类型><对象名>
FROM <角色>[,<角色>]···
审计
AUDIT设置审计功能语句
AUDIT <权限>[,<权限>]···
ON <对象类型><对象名>;
NOAUDIT取消审计功能语句
NOAUDIT <权限>[,<权限>]···
ON <对象类型><对象名>;