【问题标题】:how do I use groups to provide access to oracle apex apps如何使用组提供对 oracle apex 应用程序的访问权限
【发布时间】:2015-02-01 20:43:26
【问题描述】:

我正在尝试使用内置组功能来控制对我在 Oracle APEX 中的应用程序的访问。我在尝试使用的授权方案的表达式 1 中有以下代码:

DECLARE
    VAL BOOLEAN;
BEGIN
    IF (
        APEX_UTIL.CURRENT_USER_IN_GROUP(p_group_name=>'Problem Solvers')  OR
        APEX_UTIL.CURRENT_USER_IN_GROUP(p_group_name=>'OPS') OR
        APEX_UTIL.CURRENT_USER_IN_GROUP(p_group_name=>'SUPERUSER') )then
    VAL := TRUE;
    else VAL := FALSE;
    end if;
    RETURN VAL;
END;

此代码将阻止访问我的应用程序中的所有页面,但我无法再访问登录页面(除非我已经从开发界面登录)。我尝试在条件中包含一个附加的“OR :APP_PAGE_ID = 101”,但这会导致意外行为。特别是,当授权用户注销,而未授权用户随后登录时,他们仍然可以访问整个应用程序。我尝试设置清除会话​​缓存,并在登录页面上清除应用程序缓存进程,但无济于事。关于正确的做法有什么想法吗?

【问题讨论】:

  • 我使用此代码在应用级别进行授权。我可以在页面级别使用它,它工作得很好,但我真的不喜欢必须单独访问每个页面来设置授权。

标签: oracle authorization oracle-apex


【解决方案1】:

假设您运行的是 Apex 4.2:您应该将“在公共页面上运行”设置为否。您的登录页面应该是公开的,没有安全检查。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-21
    • 2012-06-12
    • 2016-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-17
    • 1970-01-01
    相关资源
    最近更新 更多