在我的春季项目中,有一堆用户和用户级别。因此需要提供拦截网址及其访问控制的列表。目前,它是用spring security xml文件编写的。我该如何简化呢?

任何建议将不胜感激

最佳答案

可能是,如果您想将它们放在应用程序属性中,请使用WebSecurityConfigurerAdapter

在application.properties中

url1 = /admin
url2 = /reservation/**


===

@Configuration
@EnableWebSecurity
@PropertySource("classpath:application.properties")
public class SecurityConfig extends WebSecurityConfigurerAdapter {

@Value("${url1}")
private String url1;

@Value("${url1}")
private String url2;

    @Autowired
    public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
      //..
    }

    @Override
    protected void configure(HttpSecurity http) throws Exception {

      http.authorizeRequests()
        .antMatchers(url1).access("hasRole('ROLE_ADMIN')")
        .antMatchers(url2).access("hasRole('ROLE_USER') ;

    }
}

关于java - Spring Security-如何提供拦截URL列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39934850/

10-11 16:41