aro*_*oms 9 jsp jsp-tags spring-security
如果用户没有某个角色,我想阻止带有链接的图像.例如
<sec:authorize ifNotGranted="ROLE_ACCOUNTS" ><img src="someimage.jpg"/></sec:authorize>
<sec:authorize ifAllGranted="ROLE_ACCOUNTS" ><a href="somelink.htm"><img src="someimage.jpg"/></a></sec:authorize>
Run Code Online (Sandbox Code Playgroud)
但是,现在不推荐使用ifNotGranted和ifAllGranted来支持访问表达式.我可以看到ifAllGranted可以复制:
<sec:authorize access="hasRole('ROLE_ACCOUNTS')"><a href="somelink.htm"><img src="someimage.jpg"/></a></sec:authorize>
Run Code Online (Sandbox Code Playgroud)
但是如何使用访问方法复制ifNotGranted呢?任何帮助将非常感激.
axt*_*avt 28
!运算符可以取消SpEL表达式:
<sec:authorize access="!hasRole('ROLE_ACCOUNTS')">...</sec:authorize>
Run Code Online (Sandbox Code Playgroud)
也可以看看:
如果你有很多文件要更新,我建议使用正则表达式来搜索和替换
找
<sec:authorize\s+ifAnyGranted="([^"]+)"
Run Code Online (Sandbox Code Playgroud)
用。。。来代替
<sec:authorize access="hasAnyRole('$1')"
Run Code Online (Sandbox Code Playgroud)
并搜索
<sec:authorize\s+ifNotGranted="([^"]+)"
Run Code Online (Sandbox Code Playgroud)
用。。。来代替
<sec:authorize access="!hasAnyRole('$1')"
Run Code Online (Sandbox Code Playgroud)
希望这可以节省您的时间
| 归档时间: |
|
| 查看次数: |
14989 次 |
| 最近记录: |