Grails检查来自groovy的特定控制器操作的角色访问

时间:2018-02-16 11:18:31

标签: grails spring-security

这与Grails check role access for specific controller action的问题基本相同,只是我想从另一个控制器或服务中检查Grails操作的访问权限,而不是从GSP检查。

当您想要使用操作访问来直接确定访问权限而不是角色时,这非常有用。

2 个答案:

答案 0 :(得分:0)

这是Grails 2.3

@Secured(["ONE_OF_MY_ROLES"])
class SomeController {

    SecurityTagLib securityTagLib = (SecurityTagLib)Holders.grailsApplication.mainContext.getBean('grails.plugins.springsecurity.SecurityTagLib')

    def show() {
        def access = securityTagLib.hasAccess([controller: 'product', action: 'show'], 'access')
    }
}

答案 1 :(得分:0)



import grails.plugins.springsecurity.Secured 

@Secured(['ROLE_USER']) // @Secured to the selected role by ([role that you want])
    def followAjax = { ... } // controller 




关于应该工作。 *记得"导入安全"在致电@Secured之前。