繁体   English   中英

如何通过域中的Spring安全角色过滤用户

[英]How to filter user by spring security role in domain

那可能吗? 如果没有,那么我如何在我的gsp中过滤此代码的特定角色?

<div class="fieldcontain ${hasErrors(bean: tableInstance, field: 'user', 'error')} ">
<label for="user">
    <g:message code="table.user.label" default="User" />        
</label>
<g:select id="user" name="user.id" from="${rms.User.list()}" optionKey="id" value="${tableInstance?.user?.id}" class="many-to-one" noSelection="['null': '']"/>

上面的代码段用于基本的创建和编辑功能

使用由spring-security插件提供的sec:access标记。

<sec:access expression="hasRole('ROLE')">
      <div class="fieldcontain ${hasErrors(bean: tableInstance, field: 'user', 'error')} ">
       <label for="user">
          <g:message code="table.user.label" default="User" />        
       </label>
       <g:select id="user" name="user.id" from="${rms.User.list()}" optionKey="id" value="${tableInstance?.user?.id}" class="many-to-one" noSelection="['null': '']"/>
</sec:access>

或者你可以使用sec:ifAnyGranted标签

<sec:ifAnyGranted roles="ROLE1, ROLE2, ...">
    ....
</sec:ifAnyGranted>

编辑

def users = UserRole.findAllByRole(Role.get('ROLE'))*.user.unique()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM