Spring Security中antMatchers的更好模式

时间:2017-09-07 07:29:51

标签: java spring security url

我按照Spring Security工作方法实现了一个扩展ResourceServerConfigurerAdapter的ResourceServerConfig类, 我问自己是否有更好的方法来做到这一点。

让我展示我的代码:

private static final String version = "/v1";

         http
            .authorizeRequests()

            .antMatchers("/v1/configtag*","/v1/configtag/*").hasRole("ADMIN")
            .antMatchers("/v1/extensions*","/v1/extensions/*").hasRole("ADMIN")
            .antMatchers("/v1/logging*","/v1/logging/*").hasRole("ADMIN")
            .antMatchers("/v1/searchpath*","/v1/searchpath/*").hasRole("ADMIN")
            .antMatchers("/v1/groups*","/v1/groups/*").hasRole("ADMIN")

            .anyRequest().authenticated()
            .and()
            .csrf().disable();

             .anyRequest().authenticated()
             .and()
             .csrf().disable();

问题是我希望阻止USER访问指定的路径,但是(可能是由anyRequest()。authenticated引起的)实际上USER可以访问那些路径!

我该如何解决?请注意,如果我们切断anyRequest()。authenticated,我将不得不为每条路径指定一个匹配器(我认为)

Ps:有一个唯一的字符串来执行此操作 .antMatchers("/v1/configtag*","/v1/configtag/*")

提前致谢并度过美好的一天

0 个答案:

没有答案