在 appSecurity.xml 我有这个:
拦截 url 模式 =“/users/profile/**”访问 =“hasRole('VIEW_PROFILES')”。
拦截url模式=“/用户/个人资料/编辑/ **”访问=“hasRole('EDIT_PROFILES')”
我有一个页面 /users/profiles/edit/addnew ,当具有 VIEW_PROFILES 角色的用户尝试访问此页面时,他成功获取该页面,但对具有 EDIT_PROFILES 角色的用户的访问被阻止。
我做错了什么?
Since "/users/profile/edit/"
比更具体"/users/profile/"
,它应该放在列表中更高的位置。
Why
模式始终按照其定义的顺序进行评估。因此,重要的是,更具体的模式在列表中定义得比不太具体的模式更高。这反映在我们上面的示例中,其中更具体的 /secure/super/ 模式比不太具体的 /secure/ 模式显得更高。如果它们颠倒过来,/secure/ 模式将始终匹配,而 /secure/super/ 模式将永远不会被评估。
Source: 核心安全过滤器
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)