如果我开始一个新项目以在 Java EE 平台上执行,并且我希望能够进行用户友好的登录(比如在需要时弹出一个模式对话框以获取凭据,或者像 twitter 或 SO 这样的登录选项一直可用) ,实现它的最佳方法和工具是什么?
我发现改造使用安全约束的现有项目非常困难,所以我想知道如何让我的生活更轻松!
默认情况下,我希望使用 Dojo 作为我的 JavaScript 框架并部署到像 WebSphere 这样的 Java EE 应用服务器。
如果我开始一个新项目以在 Java EE 平台上执行,并且我希望能够进行用户友好的登录(比如在需要时弹出一个模式对话框以获取凭据,或者像 twitter 或 SO 这样的登录选项一直可用) ,实现它的最佳方法和工具是什么?
我发现改造使用安全约束的现有项目非常困难,所以我想知道如何让我的生活更轻松!
默认情况下,我希望使用 Dojo 作为我的 JavaScript 框架并部署到像 WebSphere 这样的 Java EE 应用服务器。
请参阅此处的第二个答案:登录后自动登录到 JSF 应用程序重新访问
如果您使用的是 Spring Security 或 Apache Shiro,它们都通过适当的过滤器支持这一点。在后端,Spring Security 通过持久存储记住我的令牌来工作,我认为 Shiro 签署了一个哈希值。
这是弹簧指南: http ://static.springsource.org/spring-security/site/docs/3.0.x/reference/remember-me.html
这是 shiro 指南: http ://shiro.apache.org/java-authentication-guide.html
如果您使用的是 Java EE 安全性(请告诉我不是这样),除非您想设计客户登录过滤器,否则您将受限于您的容器可以支持的内容。客户过滤器可以使用 MAC 代码对 cookie 进行签名,并根据数据库对其进行验证。我不相信tomcat 7内置了这个,你可能需要检查GlassFish(它支持SSO,我认为它不支持记住我)。