JSF 身份验证注销

标签 jsf authentication glassfish logout jaas

我知道这个问题似乎已被许多其他线程回答,但我找不到使用带有 Glassfish 3.0.1 的 JSF 2.0 来注销用户的解决方案。 我尝试使用 j_security_check 作为操作使用 BASIC 身份验证和 FORM 身份验证。 但是对于注销方法,我找不到任何有效的方法。

我尝试使用带有 session.invalidate() 的 servlet,我使用托管 bean tring 使 session 无效,但没有任何反应。我也试过 j_security_logout 但没有成功。

有人知道我可以做什么来注销用户吗?

最佳答案

调用 session.invalidate() 应该有效。

您的问题可能是您使用浏览器后退按钮查看受限页面以测试注销是否真的成功,但该页面实际上是从浏览器缓存提供的,而不是直接从网络服务器提供的一个真正的 HTTP 连接。

在这种情况下,您需要指示网络浏览器缓存受限制的页面。这样浏览器将始终直接从网络服务器请求页面。您可以在 Filter 的帮助下完成此操作.您可以在这个问题中找到示例:Prevent user from seeing previously visited secured page after logout

关于JSF 身份验证注销,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6470880/

相关文章:

authentication - Nginx 基本身份验证不起作用

django - 在 Django 中正确使用 PasswordResetForm

security - 如果我在 wp-config.php 中保留了默认的身份验证 key 值,黑客可以访问我的数据库吗?

java - 带有 Java Server Faces 的 HTTPS

jsf - 如何在jsf中重置?

jsf - 未调用 Primefaces commandButton 操作属性

java - 创建连接时出现 SQLite NullPointerException 错误

java - p :dashboard model dynamically update 出现问题

windows - 在 Windows 启动时启动 glassfish

基于 Django 的应用程序是 Python 还是 Jython?