我在Spring Security中配置 endpoints 访问 . 我想要完成的事情:
-
每个人都可以访问资源
-
每个人都可以登录/注册
-
只有经过身份验证的用户才能访问注销和所有其他映射的 endpoints
这是我的配置,它满足第一个两个要求并阻止对未登录用户的访问/注销 .
http.authorizeRequests()
.antMatchers("/register").permitAll()
.antMatchers("/register/*").permitAll()
.antMatchers("/favicon.ico").permitAll()
.antMatchers("**/*.html").permitAll()
.antMatchers("**/*.css").permitAll()
.antMatchers("**/*.js").permitAll()
.and()
.formLogin().loginPage("/login").failureUrl("/login-error").defaultSuccessUrl("/")
.usernameParameter("username").passwordParameter("password")
.and()
.logout().logoutSuccessUrl("/login").deleteCookies("JSESSIONID").logoutUrl("/logout");
1 回答
确保对您的应用程序的请求要求用户进行身份验证使用 .anyRequest().authenticated()