【问题标题】:Spring Security + Google App Engine + UserService: What is the correct way to logout?Spring Security + Google App Engine + UserService:正确的注销方式是什么?
【发布时间】:2013-10-25 10:42:43
【问题描述】:

对不起,如果这个问题很明显。

我对如何使用 Google App Engine (UserService) 和 Spring MVC/Spring Security 从 Web 应用程序注销感到非常困惑。

例如,有一种方法可以做到这一点,只需放置一个指向“j_spring_security_logout”的链接,如mkyong 中所述。

还有基本Google App Engine tutorial中描述的方法,把链接放到'createLoginURL(...)'方法返回的URL。

我都试过了,谷歌用户保持登录状态。

那么,完成这个简单任务的正确方法是什么?

谢谢。

【问题讨论】:

    标签: java spring google-app-engine spring-mvc spring-security


    【解决方案1】:
    1. 通过指向j_spring_security_logout,用户的当前会话将失效,但他不会从谷歌帐户中注销。因此,当用户返回您希望用户使用 Google 帐户登录的 URL 或链接时,由于他没有从 Google 注销,因此他将正常工作。

    2. 当您将用户重定向到userService.createLogoutUrl 创建的链接时,用户将从 Google 帐户中注销。

    根据您的要求,您可以使用单个或组合这两个步骤从当前会话和 Google 帐户中注销用户。

    【讨论】:

      【解决方案2】:

      UserService 与 Google 帐户配合使用,因此 userService.createLogoutUrl 实际上会将您从 Google 帐户中注销。

      Spring Security 的注销功能与会话相关,所以j_spring_security_logout 将销毁会话。

      现在,根据您如何确定某人被视为已注销,您可以在他们之间进行选择。

      您可能想阅读这篇文章:

      http://spring.io/blog/2010/08/02/spring-security-in-google-app-engine/

      【讨论】:

        猜你喜欢
        • 2011-01-08
        • 1970-01-01
        • 1970-01-01
        • 2012-10-09
        • 1970-01-01
        • 2012-05-27
        • 2014-04-16
        • 1970-01-01
        • 2013-12-11
        相关资源
        最近更新 更多