websphere - Websphere WAS 在会话超时后创建新的 JSESSIONID,而不是使会话无效
问题描述
当我登录时,正在使用新的 jsessionid(SSO 登录)正确创建一个新会话。它是一个集群 WAS。我的会话超时值为 30 分钟。因此,在 30 分钟不活动后,我的会话被正确销毁。我希望用户在会话超时后再次提示登录。但问题是,它并没有提示用户登录,而是进入没有任何问题。
在检查日志时,我发现我以前的会话被正确销毁,但是当用户在 30 分钟后单击某些东西时,会自动创建一个新的会话 ID,这是不正确的。请建议 websphere 中的任何设置是否或会话超时后避免这种情况的任何方法。
日志:
Current session :UJ8IzrhI7-E8oSRtg1PdbSY
After 30 minutes
New session :o6fPgTstd3ytRb2xrsxkRBU (automatically) - dont know from where i am getting this
2020-01-26 **18:35:08**,307 [WebContainer : 67] ***** Browser : End Request *************************************************
2020-01-26 **18:35:08,307** [WebContainer : 67] Browser : End Request *************************************************
2020-01-26 **19:07:18,019** [WsSessionInvalidatorThread] DEBUG com.t24browser.servlets.BrowserSessionListener - Session Destroyed : Id = **UJ8IzrhI7-E8oSRtg1PdbSY**
2020-01-26 **19:07:18,019** [WsSessionInvalidatorThread] DEBUG com.t24browser.servlets.BrowserSessionListener - Clearing Session Data : Id = UJ8IzrhI7-E8oSRtg1PdbSY
2020-01-26 19:08:02,571 [WebContainer : 140] DEBUG com.t24browser.servlets.BrowserServlet - ***** Browser : Start Request ***********************************************
2020-01-26 **19:08:02**,571 [WebContainer : 140] DEBUG com.t24browser.servlets.BrowserServlet -
*** Session Data ***
- Id = o6fPgTstd3ytRb2xrsxkRBU
- Sign On Name =
- User Id =
- Token =
- Token Seq No =
解决方案
您必须在 IHS 上将请求标头设置为 no-cache、no-transform、no-private。因为使用端的浏览器正在重用它。
推荐阅读
- android - 如果互联网不可用,为什么 Retrofit 等到超时才给 onFailure 回调?
- javascript - 如何在 javascript 中迭代数组对象?
- azure - 无法将 PFX 添加到 Azure Key Vault
- azure - 如何在 Azure 门户中从我的 Linux VM 获取指标
- confluence - 迁移到 Confluence - 在 Confluence 中更新作者字段和创建或修改的字段
- javascript - 性能比较:Array of Array vs Array of Object
- sql - 如何使用行号对这个 BigQuery 查询进行分页?
- python - 使用 VS Code Python 扩展登录到受密码保护的远程 Jupyter URI(URI 中没有令牌)
- macos - kubernetes 命令在终端上工作但没有 iTerm2
- google-cloud-platform - 使用 zlib POST 到谷歌云