为什么 websphere Liberty Profile 会删除 LtpaToken2 cookie

Why does websphere Liberty Profile delete LtpaToken2 cookie

有两个应用服务器:http://localhost:9080/appA and http://localhost:9081/appB

appA 托管在 Websphere 上,我无法控制。它将 JSESSIONID 和 LtpaToken2 设置为路径“/”

appB 在我完全控制的 Liberty Profile 上。我不使用会话或单点登录。我有一个简单的 REST 服务器,可以回显用户输入。没有返回 cookie。

我在浏览器中打开 appA,登录,查看 cookie(JSESSIONID 和 LtpaToken2)。打开另一个转到 appB 的选项卡,然后我立即看到 LtpaToken2 cookie 不见了,JSESSIONID 仍然存在。回到 appA 选项卡,导航到另一个页面,用户被踢出。

什么可能导致 LtpaToken2 从 Liberty Profile 中消失?

您在日志中看到了什么errors/messages?

假设 ltpa 密钥不在完整配置文件 (WAS) 和自由配置文件之间交换,当令牌被提供给自由并且它必须进行身份验证(当访问受保护的 servlet 时)它将失败并删除 cookie。

另一种可能性是,如果进入自由的会话由于某种原因无效,则执行注销。会话是在这里共享还是应该为每个应用程序创建一个新会话?

一种解决方案是在 WAS 和 Liberty 中自定义 ltpa cookie 名称,这样就不会混淆其他 cookie。

但是,如果他们需要参与 SSO,则需要交换 LTPA 密钥。