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

Grails检查groovy中特定控制器操作的角色访问,grails,spring-security,Grails,Spring Security,这与这里的问题基本相同,只是我想检查从另一个控制器或服务(而不是从GSP)中访问Grails操作的情况 当您希望使用操作访问来确定访问权限而不是直接确定角色时,这非常有用。这适用于Grails 2.3 @Secured(["ONE_OF_MY_ROLES"]) class SomeController { SecurityTagLib securityTagLib = (SecurityTagLib)Holders.grailsApplication.mainContext.getBe

这与这里的问题基本相同,只是我想检查从另一个控制器或服务(而不是从GSP)中访问Grails操作的情况

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

这适用于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')
    }
}
导入grails.plugins.springsecurity.security
@受保护的(['ROLE\u USER'])/@受保护的选定角色由([您想要的角色])
def followAjax={…}//控制器