spring - Grails:OR 角色的@Secured 注释

标签 spring grails spring-security grails-3.0

在我使用的 Grails 中

import grails.plugin.springsecurity.annotation.Secured

@Secured({'ROLE_COMPANY', 'ROLE_BACKEND_ADMIN'})
class MobileSendersController {

但它是角色之间的 AND 关系。我需要一个或关系。允许访问 ROLE_COMPANYROLE_BACKEND_ADMIN

在此question答案是建议使用 @PreAuthorize。我在 Grails 中尝试过,但没有成功。也许我需要修改前后注释,但找不到配置。

有什么想法吗?

最佳答案

如果你看一下 documentation@Secured 之前,您会看到它使用 SpEL 表达式(documentation,关于此),因此您可以做很多事情。特别是,您可能希望像这样使用 hasAnyRole():

@Secured("hasAnyRole('ROLE_COMPANY', 'ROLE_BACKEND_ADMIN')")

关于spring - Grails:OR 角色的@Secured 注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41630358/

相关文章:

java - 使用 Camel 进行 REST 服务调用,需要先调用身份验证 api

java - 当所选选项具有空值时将嵌套对象设置为 null

spring - 在grails集成测试中创建的 protected 用户是未经授权的,但被引导用户是

eclipse - 在 eclipse-possible 插件错误上运行 grails 应用程序

连接表上的 Grails 标准投影

spring - Grails 3 REST-API匿名访问被ExceptionTranslationFilter拒绝

java - Spring Security permitAll 不允许匿名访问

java - Spring Boot post HTTP 请求

spring-boot - 向Grails注册bean for MeterRegistryCustomizer

java - 定义具体方法的接口(interface) - 在什么情况下允许这样做?