4.2.4注销处理
logout元素通过导航到特定URL添加了对注销的支持。默认的注销URL是/logout,但是您可以使用logout-url属性将其设置为其他内容。有关其他可用属性的更多信息可以在命名空间附录中找到。
但是,在遵循文档中的安全设置后,URL/logout不会显示注销页面。相反,它显示
Spring Framework 4.1.6
Spring Security 4.0.0
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<display-name>Test8</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/security-config.xml</param-value>
</context-param>
</web-app>
security-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns="http://www.springframework.org/schema/security"
xmlns:beans="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security.xsd">
<http>
<intercept-url pattern="/**" access="hasRole('USER')" />
<form-login />
<logout />
</http>
<authentication-manager>
<authentication-provider>
<user-service>
<user name="aaa" password="111" authorities="ROLE_USER, ROLE_ADMIN" />
<user name="bbb" password="222" authorities="ROLE_USER" />
</user-service>
</authentication-provider>
</authentication-manager>
</beans:beans>
Spring security自动启用csrf,csrf自动禁用GET注销。您可以通过在
中设置
禁用csrf保护来修复此问题,或者只使用post。
见http://docs.spring.io/spring-security/site/docs/4.0.1.release/reference/htmlsingle/#csrf-logout
问题内容: 在我的Web应用程序中,当我尝试注销时,它转到而不是给定的页面。在我的页面中,我添加了 问题是,当我使用spring security 3.1.4.RELEASE 版本时,此问题较早 起作用 。现在我正在使用 3.2.2.RELEASE 我也尝试了以下方法。没工作 spring-security.xml 提前致谢。 问题答案: 启用Spring Security CSRF保护后,必
当我想要注销时,我调用以下代码: 怎么修?
我正在使用带有java配置和两个HttpSecurity配置的spring-security 3.2.0.rc2。一个用于REST API,一个用于UI。当我发布到/logout时,它重定向到/login?logout,但随后(错误地)重定向到/login。当我成功地输入用户名和密码时,我会被重定向到登录-注销,并且必须再次输入凭据才能进入主页面。因此,似乎login的permitAll不被用于l
我的配置是: 版本: 我通过谷歌登录到我的应用程序,注销我的应用程序后,我在火狐控制台日志中看到有GET到 /login页面,所以如果我仍然登录在谷歌,我的安全应用程序的内容会显示(因为自动登录),但应该要求通过谷歌登录与屏幕选择帐户等。 注销后怎么强制没有自动登录
问题内容: 我正在考虑为我的应用程序使用OAuth2。我尝试实现的体系结构如下: 我将拥有自己的(仅此)授权服务器 一些资源应用程序使用授权服务器验证对资源的访问 某些客户端应用程序(网络,移动设备)会将用户重定向到授权服务器进行身份验证,如果成功,则会在资源应用程序上使用api。 到目前为止,我已经成功实现了3个基本应用程序(1个身份验证服务器,1个资源服务器和1个客户端)之间的交互。我无法正常
null 提前道谢。