Spring Security 提供了一个注销的服务来注销,通过访问一个特殊的地址(默认为 /j_spring_security_logout)来实现。当一个来自地址 /j_spring_security_logout 的访问时 LogoutFilter 开始处理并代理给一个或者多个注销处理器来处理具体的注销逻辑,比如清除安全上下文,失效Session等。根据注销的配置注销之后可能会重定向到 logout-success-url 配置的地址;
在本示例中, 我们将集成注销的处理到 Spring Security 3 Hello World Example 来演示Spring Security的注销方法。
在本文中用到的技术的工具有:
下载和导入我之前上传的 Spring Security 3 Hello World 例程
设置logout-success-url属性为/logoutSuccess.jsp,用户注销后将被重定向到这个页面。
如果你想要使用自定义注销url(比如/注销),而不是默认的那个(/j_spring_security_logout)),就可以使用logout-url属性,如下所示。
在webapp目录添加 logoutSuccess.jsp 文件:
文件: /logoutSuccess.jsp在 mypage.jsp 中添加自定义的注销 url /logout
文件: WEB-INF/pages/secured/mypage.jsp启动服务器,部署web应用程序。打开地址 http://<IP地址>:<端口>/SpringSecurityHelloWorld/secured/mypage。我们将被重定向到登录页面。使用正确的用户名(srccodes)和密码(password)我们将能够查看具有我们自定义的注销url的被保护页面的内容。
在点击“注销”链接时,Spring security将执行注销功能和重定向到我们配置的logout-success-url上。
要复核是否已经注销,可以试着再次打开http://<IP地址>:<端口>/SpringSecurityHelloWorld/secured/mypage,我们又被重定向到登录页面。这意味着,我们之前已经正确地从应用程序中注销了。
评论删除后,数据将无法恢复
评论(0)