我们的例子中要求用户进行身份验证并且在我们应用程序的每个URL这样做。我们可以通过给http.authorizeRequests()
添加多个子节点来指定多个定制需求到我们的URL。例如:
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests() //1
.antMatchers("/resources/**", "/signup", "/about").permitAll() //2
.antMatchers("/admin/**").hasRole("ADMIN") //3
.antMatchers("/db/**").access("hasRole('ADMIN') and hasRole('DBA')") 4
.anyRequest().authenticated() //5
.and()
// ...
.formLogin();
}
http.authorizeRequests()
方法有多个子节点,每个macher按照他们的声明顺序执行。