OCP Oracle安全体系(用户、角色、权限)

目录

用户: 

角色:

权限:


用户: 

安装Oracle时创建了预定义用户,参考:

​​​​​​Managing Security for Oracle Database Users

其中sys、system是常用的,权限最大的用户,它们都有DBA角色。

Oracle是没有schema概念的,用户名即schema。

sys用户schema下存储数据库核心数据字典。

system用户schema下存储其它系统数据字典。

local user是针对PDB的。

创建、修改、删除用户的例子SQL语句:

CREATE USER jward
IDENTIFIED BY password
DEFAULT TABLESPACE example
QUOTA 10M ON example
TEMPORARY TABLESPACE temp
QUOTA 5M ON system
PASSWORD EXPIRE;

ALTER USER andy IDENTIFIED BY password;

DROP USER jward;

用户可能是锁住的,需要解锁:
alter user hr identified by hr account unlock;

用户的密码是有一个超时期限的,默认是180天。

这样创建用户后,用户没有任何权限,还需要给他赋予权限,才能连接数据库,参考:
​​​​​​Managing Security for Oracle Database Users
用户名是大小写不敏感的,除非用双引号括起来。
所有用户的默认表空间是SYSTEM表空间。
用户信息数据字典,参考
Managing Security for Oracle Database Users
其中常用的有:ALL_USERS、DBA_USERS


角色:

角色是一组权限。

安装Oracle时创建了预定义用户角色,参考:

Configuring Privilege and Role Authorization

其中DBA是常用的权限最大的角色,还有CONNECT、RESOURCE。

还有很特殊的角色PUBLIC,表示所有用户,常用于赋权,参考:

Configuring Privilege and Role Authorization

角色相当于一个用户,角色不属于某个用户的,而是数据库全局的,所以创建角色时,名称全数据库范围内不能与已有用户名、角色名重复。
创建角色SQL语句:

CREATE ROLE salesclerk;

GRANT clerk_admin TO package psmith.checkstats_pkg;

REVOKE clerk_admin FROM package psmith.checkstats_pkg;

GRANT clerk_admin TO user1;

GRANT role1 TO role2;

DROP ROLE clerk;

角色创建完后,并没有任何权限,要像给用户赋权一样,给角色赋予权限,然后就可以用这个角色,给其它用户赋权。
关于角色,还有其它知识点,例如创建角色时的密码,用户修改角色等。
角色信息数据字典:DBA_ROLES


权限:

权限有许多种,参考:

​​​​​​​Configuring Privilege and Role Authorization

主要分系统权限对象权限,两者赋权语法不同。
系统权限:对整个数据库系统的操作权限,例如:SYSDBA、SYSOPER、CREATE SESSION等。

​​​​​​​对象权限:对某个表等对象的操作,例如:grant update (dname,loc) on dept to damon。对象权限可以精确到列(insert/update)。

WITH GRANT OPTION 用于对象权限:
GRANT向用户赋权时,如果增加了WITH GRANT OPTION,则被赋权的用户,可以将这个权限再赋给其它用户或回收。

WITH ADMIN OPTION 用与系统权限:
GRANT向用户赋权时,如果增加了WITH ADMIN OPTION,则被赋权的用户,除了可以将这个权限再赋给其它用户或回收,还可以修改和删除这个权限本身。

参考:
GRANT

常用系统权限:
SYSDBA和SYSOPER是常用管理员权限。

还有一个很特殊的权限ANY,表示任何权限。

参考:Configuring Privilege and Role Authorization

收回权限:

对于级联赋权的收回:

赋权顺序:A -> B -> C -> D (A赋权给B,B赋权给C,C赋权给D)
对象权限: with grant option
对象权限的回收是级联: A 收回 B 的权限, CD 权限也被收回。
回收原则,谁授予谁回收: A 不能直接回收 C 的权限。
scott -> damon -> hr

赋权顺序:A -> B -> C -> D (A赋权给B,B赋权给C,C赋权给D)
系统权限: with admin option
系统权限的回收不是级联的: A 收回 B 的权限, CD 权限还在。
回收原则,只要被授权时有 with admin option, 就可以回收这个权限


这三者都有common(指整个CDB)和local(指个别PDB)的区别,都有与之相关的创建和操作SQL语句和数据字典。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值