第 21 章 Voter表决者
来源:互联网 发布:淘宝生意参谋选词助手 编辑:程序博客网 时间:2024/05/17 02:07
21.1. Voter表决者
实际上并没有翻译的字面含义那么有血有肉,实际上就是一些条件,判断权限的时候,这些条件有三个状态。弃权,通过,禁止。最后通过你在xml里配置的策略来决定到底是不是让你访问这个需要验证的对象。
Spring Security提供的策略有三个
UnanimousBased.java 只要有一个Voter不能完全通过权限要求,就禁止访问。这个太可怕了,我今天晚上就载在它上面了。就因为我给所有的资源设置了两个角色,但当前的用户只拥有其中一个角色,就导致这个用户因为权限不够,所以无法继续访问资源了。简直无法理喻啊。
AffirmativeBased.java只要有一个Voter不能通过权限要求,就禁止访问。这里应该是一个最小通过,就是说至少满足里其中一个条件就可以通过了。
ConsensusBased.java只要通过的Voter比禁止的Voter数目多就可以访问了。嘿嘿。
最后我当然选择AffirmativeBased.java,这样,我给一个资源配置几个角色,用户只要满足其中一个角色就可以访问啦。这样更正常一些啊。
21.2. 默认角色名称都是以ROLE_开头
稍微注意一下,默认角色名称都要以ROLE_开头,否则不会被计入权限控制,如果需要修改,就在xml里配个什么前缀的。可以用过配置roleVoter的rolePrefix来改变这个前缀。
<bean id="roleVoter" class="org.springframework.security.vote.RoleVoter"> <property name="rolePrefix" value="AUTH_"/></bean>
1 0
- 第 21 章 Voter表决者
- 第一篇,表决心
- 表决心
- 使用Oracle ASM集群增加一个NFS共享的第3个表决文件
- Workflow表决的例子
- 束表决函数作用
- 表决心2333333
- 一个表决心
- 又是表决心贴
- 美再度推迟表决人民币汇率提案
- 关于老股民去留的表决!
- 百度高管欲任烟企独董遭警告 是否出任今表决
- 开通技术博客,以表决心
- oracle RAC 之表决磁盘(votedisk)
- 重建表决磁盘和OCR文件
- Cuda束表决函数(warp vote)
- 替换存储表决磁盘的ASM
- Cuda束表决函数(warp vote)
- Tomcat的bin目录下的startup.bat和Tomcat7.exe的区别
- Android 生成keystore的两种方式(签名文件生成方式)
- 拒绝过劳死,码农们如何养生?
- android service完全解析(上)
- 最全的运放典型应用电路及分析
- 第 21 章 Voter表决者
- AsyncTask
- ruby 开发神器 rubymine的使用教程
- 杭电-1513Palindrome(LCS+滚动数组)
- GCD的介绍和使用(五)
- 关于Unity3d中的LayerMask使用
- DOM(文档对象模型)解析原理
- 转意字符问题
- linux/windows下开发yii项目