系统管理Lesson 06. Administering User Security
- 1. 一个 Oracle 用户账户必须具备哪些安全特征? 6-3
- 2. 数据库创建好后,有哪几个预定义的管理账户,各自的功能是什么 ? 6-5 6-6
- 3. 验证授权账户的方法有哪几个? 6-8
- 4. 请写出解锁账户和修改账户密码的 SQL 语句。 6-15
- 5. 在用 grant 命令时,with admin option 和 with grant option 选项的作用分别时什么? 6-19 6-22
- 6. 什么是角色,使用角色有哪些好处? 6-23 6-25
- 7. 请谈谈使用 DBMS_PRIVILEGE_CAPTURE 进行权限分析时的基本流程。 6-29
- 8. 一个用户账户的概要文件(Profiles)都有哪些功能? 6-31
- 9. 为什么 Oracle 建议不要对 SYS、SYSMAN 和 DBSNMP 这些管理账户使用概要文件进行口令限制?
- 10. 请谈谈你对“使用最小权限原则”这一最佳实践要求的理解。 6-40
- 11. 请把下面内容翻译成中文:
1. 一个 Oracle 用户账户必须具备哪些安全特征? 6-3
- A unique username
- An authentication
- A default tablespace
- A temporary tablespace
- A user profile
- An initial consumer group
- An account status
翻译
- 唯一的用户名
- 验证方法
- 默认表空间
- 临时表空间
- 用户概要文件
- 初始使用者组
- 账户状态
2. 数据库创建好后,有哪几个预定义的管理账户,各自的功能是什么 ? 6-5 6-6
SYS:
- Owns the data dictionary and the Automatic Workload Repository(AWR)
- Used for startup and shutdown of the database instance
SYSTEM:Owns additional administrative tables and views
SYSBACKUP:Facilitates Oracle Recouvery Manager(RMAN) backup and recovery operations
SYSDG:Facilitates Oracle Data Guard operations
SYSKM:Facilitates Transparent Data Encryption wallet operatioins
翻译
SYS:(SYSDBA权限)
- 拥有数据字典和
自动工作量资料档案库(AWR)
- 用于数据库实例的启动和关闭
SYSTEM:拥有附加管理表和视图
SYSBACKUP:实施Oracle recovery Manager(RMAN)备份和恢复操作
SYSDG:实施Oracle Data Guard操作
SYSKM:实施透明数据加密密钥
操作
SYS和SYSTEM账户是数据库运行所必须的,不能被删除。
SYSBACKUP,SYSDG.SYSKM是为了进一步实施职责分离的管理功能而增加的
3. 验证授权账户的方法有哪几个? 6-8
Password:User definition includes a password that must be supplied when the user attempts to log in to the database
External:Authentication by a method outside the database(operating system, Kerberos, or Radius)
Global:Users are identified by using an LDAP-based directory service
翻译
口令验证:用户定义包括用户尝试登录数据库时必须提供的口令
外部验证:通过数据库外部的方法进行身份验证(operating system, Kerberos, or Radius)
全局验证:通过使用基于LDAP的目录服务来标识用户
4. 请写出解锁账户和修改账户密码的 SQL 语句。 6-15
解锁账户
alter user 账户 account unlock;
修改账户密码
alter user 账户 identified by 密码;
alter user 账户 identified by 密码 account unlock;
alter user scott identified by triger account unlock;
5. 在用 grant 命令时,with admin option 和 with grant option 选项的作用分别时什么? 6-19 6-22
with admin option (系统权限)
被授予该权限的用户有权将某个权限(如create any table)授予其他用户或角色
取消是不级联的
场景
- DBA 将带 ADMIN OPTION 的 CREATE TABLE 系统权限授予 Joe。
- Joe 创建表。
- Joe 将 CREATE TABLE 系统权限授予 Emily。
- Emily 创建表。
- DBA 撤销 Joe 的 CREATE TABLE 系统权限。
结果
Joe 的表仍旧存在,但是 Joe 不能再创建新表。Emily 的表仍旧存在,而且她仍旧具有 CREATE TABLE 系统权限。
with grant option (对象权限)
权限赋予/取消是级联的
被授予的用户也可把此对象权限授予其他用户或角色,管理员收回用户对象权限时,权限会因传播而失效
场景
- Joe 被授予了对 EMPLOYEES 的 SELECT 对象权限(带 GRANT OPTION)。
- Joe 将对 EMPLOYEES 的 SELECT 权限授予 Emily。
- 撤销 Joe 的 SELECT 权限。此撤销也级联到 Emily。
6. 什么是角色,使用角色有哪些好处? 6-23 6-25
Roles:
- Used to group together privileges and roles
- Facilitate granting of multiple privileges or roles to uers
Benefits of roles:
- Easier privilege management
- Dynamic privilege management
- Selective availability of privileges
角色:
- 用于将权限和角色分组
- 方便向用户授予多个权限或角色
好处:
- 简化权限管理
- 进行动态权限管理
- 有选择地提供权限
7. 请谈谈使用 DBMS_PRIVILEGE_CAPTURE 进行权限分析时的基本流程。 6-29
定义分析的类型和条件
调用ENABLE_CAPTURE存储过程启动分析
一定时间后,调用DISENABLE_CAPTURE存储过程停止分析
调用GENERATE_RESULT存储过程产生分析报告
删除未使用的不必要的权限
8. 一个用户账户的概要文件(Profiles)都有哪些功能? 6-31
Users are assigned onlu one profile at a time.
Profiles:
- Control resource consumption
- Manage account status and password expiration
翻译:
用户一次只能分配一个配置文件。
配置文件:
- 控制资源使用量
- 管理帐户状态和口令过期
管理员使用概要文件控制系统资源(CPU、网络/内存、磁盘I/O)
(对账户口令和账户的资源使用进行限制和管理)
9. 为什么 Oracle 建议不要对 SYS、SYSMAN 和 DBSNMP 这些管理账户使用概要文件进行口令限制?
使SYS、SYSMAN 和 DBSNMP帐户口令到期和锁定这些帐户,会导致OracleEnterpriseManager无法正常运行。
应用程序必须捕获“口令到期”警告消息并处理口令更改;否则,宽限期一到期,就会锁定用户而不通知原因。
(锁定后会阻止正常的管理工作以及企业管理器的正常进行)
10. 请谈谈你对“使用最小权限原则”这一最佳实践要求的理解。 6-40
1️⃣must要在操作者在操作以前为他指派权限(定义操作者的权限边界)。
当操作者要对某个资源进行操作时,系统会在他的权限边界内匹配是否有对该资源的操作权限,有就可以让他进行操作,没有就拒绝。
(意味仅向用户授予能够有效完成任务所需的必要的权限,除此以外,不应授予其他的权限)
2️⃣ 降低用户修改或查看(无意或恶意)他们无权修改或查看数据的几率,从而保证数据的安全
11. 请把下面内容翻译成中文:
Oracle数据库包括五个管理特权,这些特权是为了便于职责分离而提供的。
SYSDBA和SYSOPER管理权限用于执行各种标准数据库操作,包括启动数据库实例和关闭数据库实例。
有关SYSDBA和SYSOPER权限的授权操作的完整列表,请参阅《Oracle数据库管理员指南》。
SYSBACKUP、SYSDG和SYSKM是Oracle Database 12c的新功能,它们是针对特定的备份和恢复、Oracle Data Guard和透明数据加密密钥管理的管理任务。
在以前的版本中,这些任务需要SYSDBA权限。
这些特权使您能够连接到数据库,即使数据库未打开。
有关SYSBACKUP、SYSDG和SYSKM权限的支持操作列表,请参阅racle Database Security Guide。