access is denied 可能的原因分析
用 applicationContext security做权限控制访问, 如果出现access is denied,一般来说,有几个可能原因,一是没有权限,这好解决,分配权限就是。二是权限配置错误,这也好办,修改配置就可以。还有一个原因稍微隐蔽一点,大家细心一点就是,就是要注意,处在前面的配置的url不能与后面的配置访问权限的url重复或重叠或者覆盖后面的配置,否则,后面配置的url的访问权限将失效。
举例说明:
如果如下配置,
<s:intercept-url pattern="/*/*.do" access="ROLE_SuperAdmin,ROLE_ADMIN" />
<s:intercept-url pattern="/users/*.do" access="ROLE_SuperAdmin,ROLE_ADMIN,ROLE_NORMAL" />
<s:intercept-url pattern="/stationmsg/*.do" access="ROLE_SuperAdmin,ROLE_ADMIN,ROLE_NORMAL" />
此时,第一个配置覆盖了后面所有配置,所以此时后面所有的配置都为无效,角色为ROLE_NORMAL的用户都将无法登录。
同样反过来配置,但略作修改;
<s:intercept-url pattern="/users/*.do" access="ROLE_NORMAL" />
<s:intercept-url pattern="/stationmsg/*.do" access="ROLE_NORMAL" />
<s:intercept-url pattern="/*/*.do" access="ROLE_SuperAdmin,ROLE_ADMIN" />
这时 角色权限为“ROLE_SuperAdmin,ROLE_ADMIN”用户无法访问前面两个url。
只有角色为ROLE_NORMAL的用户可以访问前面两个url.
其实很简单的。
分享到:
相关推荐
Amazon 卖家接口Demo,官方Demo一堆错误,千万不要被误导。 解决: 1、Access to requested resource is denied 2、The security token included in the request is invalid 有疑问可提问
Sitecore Hackathon 2021 必须阅读: ⟹-CAS <<
在排除没有登录和网络的原因:我还是报的如下错误 原因镜像的名字没有按照规范命名: 你的dockerHub用户名/镜像名字:镜像版本 #我把 my_redis:v1 改成了 langxuhao/my_redis:v2 [root@instance-f4khj00x ~]# docker...
ecshop(用户名或邮箱都可登录)修改原理:在登录验证前做判断如果是邮箱的话将此邮箱对应的用户名取出作为登录用户名.
1、错误号401.1 2、错误号401.2 3、错误号:401.3
有名的FTP客户端工具,使用十分简单和方便
调用https协议的webservice,以及证书手动加载。
django.db.utils.OperationalError: (1045, “Access denied for user ‘账号’@’localhost’ (using password: YES)”) 错误。 这种错误指的是连接数据库时账号密码错误。 1.只需要修改setting.py文件里的...
Cannot delete file: Access is denied There has been a sharing violation. The source or destination file may be in use. The file is in use by another program or user. Make sure the disk is not full or ...
第一种方法: 推荐错误描述: Mysql中添加用户之后可能出现登录时提示ERROR 1045 (28000): Access denied for user的错误. 原因分析: 在mysql.user表中可能出现user为空的记录,如: mysql> select host,user from user...
myeclise10 svn: E210004: Number is larger than maximum 解决方案 专门解决win7 64位操作系统 下svn插件问题
access:access_check
- Cannot delete file: Access is denied - There has been a sharing violation. - The source or destination file may be in use. - The file is in use by another program or user. - Make sure the disk is ...
备份同步报错解决方法,无法在左侧上创建goodsync状态文件夹_gsdata_:拒绝访问,
chrome_100_percent.pak
本篇将要和朋友们分享的是几个上传文件的例子和逻辑步奏及自定义个简单的js上传插件我取名为shenniu.upfile-0.0.1.js;近来在讨论组中很有几个朋友咨询上传文件的代码和怎么下载上传的文件,所以写了此篇文章,希望...
ajax动态获取数据填充下拉列表,下拉列表中选项改变时动态创建单选按钮组,演示时请在本地搭建服务器后演示,否则容易出现:Error:Access is denied.
YAML对Go语言的支持 介绍 yaml软件包使Go程序可以舒适地编码和解码YAML值。 它是在作为项目的一部分开发的,它基于著名的 C库的纯Go端口,可快速可靠地解析和生成YAML数据。 兼容性 yaml程序包支持大多数YAML 1.1和...
case ERROR_ACCESS_DENIED: // The specified COM-port is in use return EPortInUse; default: // Something else is wrong return EPortUnknownError; } } // Close handle ::CloseHandle(hFile); /...
myeclise10 svn: E210004: Number is larger than maximum 解决方案 专门解决win7 64位操作系统 下svn插件问题。 下载文件包括: site-1.8.22.zip --->svn离线安装包 Slik-Subversion-1.8.9-x64 --->问题修复必选...