我在我的网络应用程序中使用spring security。 我正处于恢复用户名和密码的阶段。
用例:
当用户忘记密码时,他们无法登录 如何通过 spring security 向 spring 发送请求?
问题是 spring security 除非在中 ,否则不会让任何事情通过
我目前在配置中使用以下内容:
@Override
public void configure(WebSecurity web) throws Exception {
web.ignoring().antMatchers("/loginrecover/**");
}
我认为这完全是在安全之外并且易受攻击。
还有其他方法可以达到这个目的吗?
答案 0 :(得分:0)
我会用:
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests().antMatchers("/loginrecover").permitAll()
...}
使用permitAll,您不会禁用安全过滤器。 Spring Security相关功能仍然可用。
使用ignoring()可以完全禁用该请求路径的安全过滤器链。 Spring Security功能将无法使用。这是安全性“无”的java配置。 这应该仅适用于静态资源。
是的,它很相似,您需要一个未经授权的网站。但正确的方法是禁用访问权限而不是过滤器。