gpt4 book ai didi

java - 重新访问时自动登录 JSF 应用程序,一旦登录

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:03:25 25 4
gpt4 key购买 nike

对于典型的最典型的面向互联网的网站,当您通过关闭选项卡(不注销)登录和离开网站时,然后在连续重新访问时,您可能不需要重新指定您的凭据或登录,您将直接登录。

这一切是如何在后端发生的?如何在我的 JSF 2.1 应用程序上启用这种机制?


在 Tomcat7 服务器上使用 JSF 2.1

最佳答案

这基本上是由一个长期存在的 cookie 完成的。 JSF API 不提供此功能,因为它只是一个简单的基于组件的 MVC 框架。标准 Java EE API 也不提供此功能。一些身份验证框架,如 Spring SecurityApache Shiro提供此功能。

如果您需要使用“普通”Java EE/JSF 来实现它,那么您需要在登录期间自己创建一个长期存在的 cookie by ExternalContext#addResponseCookie() . cookie 值必须是一个长的、唯一的、自动生成的且难以猜测的值(例如 java.util.UUID ),您也将其存储在与用户 ID 关联的数据库中。然后,您可以使用一个简单的 servlet filter通过 HttpServletRequest#getCookies() 检查 cookie当确认登录用户不在时。如果找到 cookie 并且有效,则自动登录用户。

为提高安全性,如有必要,请为最终用户提供“锁定”用户 IP 上的此 cookie 的选项,您还将该 cookie 与 cookie ID 和用户 ID 一起存储在数据库中。

另见:

关于java - 重新访问时自动登录 JSF 应用程序,一旦登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9810224/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com