在 Oracle 中创建配置文件和限制用户的策略有什么区别?

what is the difference between creating a profile and a policy to restrict a user in Oracle?

参加 Oracle 数据库安全课程,我了解到正在创建配置文件以限制某些用户对某些用户的访问 resources.On 另一方面,我们有功能和策略,它们也可以限制用户,但是我无法清楚这两者之间的区别。为什么我们在可以为用户创建策略的同时使用配置文件?

Profile 限制允许用户使用多少系统资源:他们可以有多少个并发会话,他们可以使用多少 CPU,等等。我们还可以使用 Profiles 进行密码管理:有多少失败允许的登录次数、密码的有效期等

因此,配置文件定义了系统使用的广泛范围。它管理硬件和数据库访问。

"policy" 我假设您指的是细粒度访问控制。这些策略限制了用户可以看到的个人 table:他们可以看到哪些行和哪些列。因此,我们 could.use FGAC 政策允许经理查看其直接下属的所有详细信息,但只能查看所有其他员工的某些信息。

因此,策略对用户 已经可以访问 的 table 应用进一步的限制。其中突出显示了您的问题中缺少的 P

权限授予用户执行特定操作的权限。默认情况下,用户无法在数据库中执行任何操作。如果没有 CREATE SESSION 权限,他们甚至无法连接到它。有两个级别的特权。系统权限允许用户执行一般活动,如创建 table、执行任何过程、查询数据字典等。Table 权限允许用户对拥有的特定对象执行某些操作不同的用户,例如来自 my.employee_table 的 select、执行 her.string_function

因此您可以看到权限和 FGAC 策略如何相互作用。我可能会授予您 select 并在 my.employee_table 上更新,但执行的政策只允许您更新部门 40 的记录。

总结一下。有四个级别的用户限制。 按广度降序排列:

  1. 简介
  2. 系统权限
  3. Table(即对象)权限
  4. FGAC 政策

注意:12c 引入了一些称为 Audit Policy 的内容。显然,这与 Oracle 数据库安全性的一般主题相关,但我认为它与此无关。