【发布时间】:2015-10-12 13:39:59
【问题描述】:
使用 Grails Spring Security 和 Spring Security ACL。 我有一个控制器:
class AdminCompanyController {
@PreAuthorize("hasRole('ROLE_ADMIN')")
def create() {
println("create")
[company: new Company()]
}
}
即使只有角色ROLE_USER 的用户也可以访问create() 操作。
我知道我可以使用 spring 安全注释 @Secured 来做到这一点,但我想使用 ACL 来做到这一点。
如何防止没有 ROLE_ADMIN 的用户使用 ACL 访问 create() 操作?
编辑:我使用 Grails 2.4.5 和
compile ":spring-security-core:2.0-RC5"
runtime ':spring-security-acl:2.0-RC2'
【问题讨论】:
-
您是否已将
@EnableGlobalMethodSecurity(prePostEnabled = true)添加到您的安全配置中? -
不,我必须把它放在哪里?你能发布一个简短的例子吗?
-
@Mati 记得我想使用 ACL 吗?
-
这个注解应该启用像
@PreAuthorize这样的注解,这也是ACL的一部分。您使用哪个版本的 grails? -
@Mati 我在我的编辑中发布了它。无法解析
@ EnableGlobalMethodSecurity的依赖关系。
标签: spring-mvc grails spring-security