允许管理员访问所有映射Spring安全性

时间:2020-03-24 12:48:17

标签: spring-boot spring-security

我有一个带有映射的spring boot rest控制器: 映射1 @GetMapping(value = "/onlyUser1Access") 和映射2 @GetMapping(value = "/onlyUser2Access")

分配的角色为user1 = ROLE_USER1,user2 = ROLE_USER2

我想允许管理员访问两个映射(管理员可以访问的除了mapping1和mapping2之外还有其他映射)。

我只能实现: -mapping1可以由user1而非admin访问。 -mapping2可以由user2而非管理员访问。

我希望管理员访问所有映射。

以下是我在configure(HttpSecurity http)方法中的代码:

                .authorizeRequests()
                .antMatchers("/onlyUser1Access").hasRole("USER1")
                .antMatchers("/onlyUser2Access").hasRole("USER2")
                .antMatchers("/", "/**").hasRole("ADMIN")```

1 个答案:

答案 0 :(得分:1)

尝试做.antMatchers("/onlyUser1Access/**").hasAnyRole("USER1", "ADMIN")