Oracle apex Oracle Apex-管理和用户

Oracle apex Oracle Apex-管理和用户,oracle-apex,database-administration,Oracle Apex,Database Administration,我正在创建一个Oracle Apex应用程序 我的问题: 申请有两个方面;管理和用户。管理的目的是将用户分配到组 用户只能访问已分配给他们的信息组 比如,;A先生被分配到A组。 B先生被分配到B组。 C先生被分配到A、B和C组 应该只允许用户访问分配给他们的区域,而不允许用户访问管理控制。只有查看权限 这可能吗? 我发现我很难动脑 您有许多需求,每个需求都可以在Apex中构建,但使用不同的功能: 管理员可以将用户分配到组 只有管理员可以访问管理控件 用户可以查看权限 用户只能查看其组的信息 我会

我正在创建一个Oracle Apex应用程序

我的问题:

申请有两个方面;管理和用户。管理的目的是将用户分配到组

用户只能访问已分配给他们的信息组

比如,;A先生被分配到A组。 B先生被分配到B组。 C先生被分配到A、B和C组

应该只允许用户访问分配给他们的区域,而不允许用户访问管理控制。只有查看权限

这可能吗?
我发现我很难动脑

您有许多需求,每个需求都可以在Apex中构建,但使用不同的功能:

  • 管理员可以将用户分配到组

  • 只有管理员可以访问管理控件

  • 用户可以查看权限

  • 用户只能查看其组的信息

  • 我会使用Apex授权计划来处理#1、#2和#3。例如,创建一个名为“管理员”的授权方案,该方案检查当前用户是否为管理员,然后将此方案应用于任何只有管理员才能访问的页面、区域、按钮、项目等

    对于#4,我可以想到几个解决方案:

  • 谓词-确保应用程序中的每个查询都检查当前用户是否可以根据其组查看数据

  • 视图-将安全谓词封装在每个表的视图中,这样您就不必在整个应用程序中重复此代码

  • Oracle VPD或行级安全性(需要企业许可证)-这将在SQL级别后面隐藏安全谓词

  • 我已经为不同的项目使用了以上所有3个选项;第三个是针对具有相当复杂的权限检查规则的相当大的应用程序。RLS使这个项目更简单,更容易构建和验证;然而,在某些情况下,RLS可能是过度杀伤力