Spring Security中html页面设置hasRole无效的问题
Spring Security中html页面设置hasRole无效的问题
一、前言
学了几天的spring Security,偶然发现的hasRole和hasAnyAuthority的区别。当然,可能有更深入的我没看到。现在把我实际的调试结果分享给大家
二、失效原因及解决
下面是部分示例html页面代码
- <div sec:authorize="hasRole(‘R_ADMIN‘)">
- <p class="bg-info">权限0001可见</p>
- </div>
- <div sec:authorize="hasRole(‘ROLE_MD‘)">
- <p class="bg-info">权限0002可见</p>
- </div>
- <div sec:authorize="hasAnyAuthority(‘R_ADMIN‘)">
- <p class="bg-info">权限0003可见</p>
- </div>
- <div sec:authorize="hasRole(‘ROLE_MD‘)">
- <p class="bg-info">权限0004可见</p>
- </div>
- <div sec:authorize="hasAnyAuthority(‘ADMIN‘)">
- <p class="bg-info">权限0005可见</p>
- </div>
- <div sec:authorize="hasRole(‘MD‘)">
- <p class="bg-info">权限0006可见</p>
- </div>
实际测试发现以下两点。
第一、在html页面中如果要使用hasRole去设置权限,那么必须是以ROLE_开头的角色。而hasAnyAuthority则不存在这个问题。查了一下官方文档并没有什么有用的东西。如果各位同学查到可以留言补充
再次调试发现第二点
第二、在html页面中使用hasRole时可以省略掉ROLE_部分,只在后端放入角色的时候前面加上ROLE_即可,而hasAnyAuthority不支持这么做。即当一个角色名是ROLE_MD的用户登录时,她能看到2、4、6;所以在权限的放入时,比如:auths.add(new SimpleGrantedAuthority(role.getRoleCode()));可以在前面加个ROLE_,html页面仍然写原来的角色名就行。
2019-04-0919:44:51
相关内容
-
如何设置用户权限|如何设置用户权限密码
如何设置用户权限|如何设置用户权限密码,,如何设置用户权限密...
-
怎么把电脑显卡清灰分享|显卡清灰教程
怎么把电脑显卡清灰分享|显卡清灰教程,,1. 显卡清灰教程1.首先...
-
6000元教你黑盒5000+权限配置
6000元教你黑盒5000+权限配置,,一系列的价格后,最经典的AMD双核...
-
手机root权限|手机root权限怎么开启vivo
手机root权限|手机root权限怎么开启vivo,,手机root权限怎么开...
-
wps如何进行页面设置
wps如何进行页面设置,WPS教程,1.wps中页眉页脚怎样设置首先我...
-
虾类安装经验分享!
虾类安装经验分享!,,虾类安装经验分享: 1,机箱的电源光盘应该接...
-
电脑打开打印机页面设置在哪个文件夹|电脑里面
电脑打开打印机页面设置在哪个文件夹|电脑里面打印机设置在...
-
主人空间设置了权限|主人空间设置了权限怎么进
主人空间设置了权限|主人空间设置了权限怎么进入,,1. 主人空间...
-
Windows电脑申请iOS证书教程及工具分享
Windows电脑申请iOS证书教程及工具分享,证书,文件,首先介绍下...
-
一般页面设置|页面设置主要设置什么
一般页面设置|页面设置主要设置什么,,1. 页面设置主要设置什么...
-
手机连接电脑调试网页|手机连接电脑调试网页怎
手机连接电脑调试网页|手机连接电脑调试网页怎么弄,,手机连接...
-
怎么打开显卡设置|怎么打开显卡设置权限
怎么打开显卡设置|怎么打开显卡设置权限,,怎么打开显卡设置权...
-
如何设置微博手机型号|如何设置微博手机型号权
如何设置微博手机型号|如何设置微博手机型号权限,,1. 如何设置...
-
获取电脑的ip|获取电脑的管理员权限
获取电脑的ip|获取电脑的管理员权限,,1. 获取电脑的管理员权限...
-
oppo应用权限设置|OPPO如何设置应用权限
oppo应用权限设置|OPPO如何设置应用权限,,1. OPPO如何设置应用...