1

我正在尝试通过 spring security 的 @Secured 注释访问 grails 应用程序的配置,目的是稍后将角色名称外部化。

可悲的是,我无法让这个工作。既不尝试使用已弃用的 ConfigurationHolder 类,也不获取对 grailsApplication 对象的引用。

import org.codehaus.groovy.grails.commons.ConfigurationHolder as CH
@Secured([CH.config.grails.app.user])
class MyController { ...}

Config.groovy:
...
grails.app.user = "ROLE_APPNAME_USER"
...

有没有人建议如何解决这个问题?

编辑
看到伯特的文章,这是信息性的。

4

1 回答 1

4

您不能 - 注释元素值必须是编译时常量,因为它们由编译器解析并存储为类字节码的一部分。

使用其他机制之一来指定安全约束(数据库中的静态规则或 Requestmap 实例)而不是注释,您可能会更幸运。

于 2013-06-20T14:12:02.523 回答