java - 删除 websphere 中的 cookie - 如何注销

标签 java cookies websphere logout

我正在使用另一个网页,该网页通过 URL 将用户身份验证( AD 登录)传递到 WebSphere。当我注销时,我将重定向到登录页面,并且已经登录,因为我的 session 从未关闭。我尝试了一些方法来禁用 WebSphere 的 cookie,但没有任何效果。当我按下注销按钮时,有没有一种简单的方法可以用java代码删除cookie?非常感谢任何帮助。

最佳答案

如果您使用的是 WebSphere 8.x,则应该使用 servlet 3.0 api 和 request.logout()方法,在重定向到注销页面之前。此方法将删除 session 和身份验证 cookie。

对于较旧的 WebSphere 版本/servlet api,请使用以下内容(在 WAS v8 中已弃用):

try {
    WSSecurityHelper.revokeSSOCookies(req, res);
    } catch(Exception e) {
    ...
}

更新
对于 v7,我建议使用 form-logout。 如果您想要注销表单应用程序,您可以创建以下注销表单,或者创建到 ibm_security_logout 的自定义帖子,您可以在注销后使用 logoutExitPage 重定向到所需的页面:

<h2>Sample Form Logout</h2>
<FORM METHOD=POST ACTION="ibm_security_logout" NAME="logout">
    <input type="submit" name="logout" value="Logout">
    <INPUT TYPE="HIDDEN" name="logoutExitPage" VALUE="/login.html">
</form>

有关更多详细信息,请参阅Customizing login/logout

如果您无法使用此表单注销,请在 servlet 中使用如上所示的 WSSecurityHelper.revokeSSOCookies(req, res)

关于java - 删除 websphere 中的 cookie - 如何注销,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27466797/

相关文章:

jakarta-ee - 如何在 JAX-RS 应用程序 (WebSphere Liberty) 中更改 Jackson 版本

java - JDialog空闲时超时

php - 记住不使用 Laravel 的用户

java - 局部变量必须是 final 或有效的 final

node.js - Cookie 中的 JWT 身份验证,具有无状态服务器且无服务器端渲染

java - 如何修复 GWT 中的 "Cookie set without httpOnly"安全问题

java - 如何在服务器中查找WebSphere7服务器启动/停止历史记录

Eclipse Luna vs Kepler

java - AlertDialog.Builder 显示 API 请求为 null

java - 如何多次重复使用线条?