Oracle Apex 19.2 会话共享不起作用

Oracle Apex 19.2 Session Sharing not working

我有一堆应用程序,例如App1、App2、App3 等等。每个应用程序都独立于其他应用程序,但它们都使用 LDAPS 身份验证方案,因此用于登录的 "account" 是相同的。

我设置了一个数据库 table (tblUserApps),我在其中将每个应用程序与允许使用它的用户进行匹配,并加入顶点视图 apex_applications。我修改 home_link 字段的值 (f?p=&APP_ID.:1:&SESSION.) 替换&APP_ID. 部分与 tblUserApps.

中的 appID

顶点页面中的link是这样的:

User | AppID ---> home_link used in apex
------------
UsrA | 101   ---> f?p=101:1:&SESSION.
UsrA | 102   ---> f?p=102:1:&SESSION.
UsrB | 101   ---> f?p=101:1:&SESSION.
UsrB | 103   ---> f?p=103:1:&SESSION.
UsrC | 102   ---> f?p=102:1:&SESSION.
...  | ...

对于 apex 中的每个应用程序,我为自定义会话共享设置了具有相同 cookie 名称的身份验证方案,但我访问的每个应用程序都请求登录。

我找到了解决方案 here 但是在为每个应用程序设置相同的 cookie 名称后,每次我尝试传递到不同的应用程序时都会显示登录页面。

由于收到的评论,我意识到我遗漏了一些明显的东西,事实就是这样。

grassroot-oracle post所述,auth scheme配置正确。错误在于我构建应用程序的方式 home_link。

我构建 URL 不是在 Apex 中而是在数据库(视图)中,我使用语法 &SESSION. 结果是 string 最后的 URL 正好是 f?p=101:1:&SESSION. 使用语法 V('SESSION') 最终的 url 变为 f?p=101:1:123456789 并且所有 wark 都按预期正确。

有用的链接:

Understanding URL Syntax

Referencing Session State