如何在spring安全acl中实现RunAs

如何在spring安全acl中实现RunAs,spring,grails,groovy,runas,spring-security-acl,Spring,Grails,Groovy,Runas,Spring Security Acl,我想让一个用户以另一个角色(即管理员角色:role\u user\u admin)的身份运行,以更改另一个用户拥有的对象中的权限 创建具有权限“Role\u RUN\u AS\u USERADMIN”的角色 在config.groovy中启用RunAs grails.plugin.springsecurity.useRunAs=true grails.plugin.springsecurity.runAs.key='*****' 授予生成的角色更改Acl详细信息的权限 grails.plugin

我想让一个用户以另一个角色(即管理员角色:role\u user\u admin)的身份运行,以更改另一个用户拥有的对象中的权限

  • 创建具有权限“Role\u RUN\u AS\u USERADMIN”的角色
  • 在config.groovy中启用RunAs
  • grails.plugin.springsecurity.useRunAs=true

    grails.plugin.springsecurity.runAs.key='*****'

  • 授予生成的角色更改Acl详细信息的权限
  • grails.plugin.springsecurity.acl.authority.changeAclDetails='ROLE\u RUN\u AS\u USERADMIN'

  • 注释接受邀请并将域对象权限设置为允许访问的服务方法
  • @预授权(['ROLE\u USER'、'ROLE\u RUN\u AS\u USERADMIN'])//以ROLE\u USER和ROLE\u RUN\u AS\u invested\u USER身份运行

    但在将访问控制项添加到域对象的acl时,我仍然会遇到一个错误:

    无法找到已传递权限和SID的匹配ACE