了解RoleVoter概念?

时间:2015-01-02 13:05:06

标签: java spring-security

我可以在其中一个项目中看到以下配置

<bean id="myFilterSecurityInterceptor"
        class="org.springframework.security.web.access.intercept.FilterSecurityInterceptor">
        <property name="authenticationManager" ref="authenticationManager" />
        <property name="accessDecisionManager" ref="accessDecisionManager" />
        <property name="securityMetadataSource">
            <security:filter-security-metadata-source>
                <security:intercept-url pattern="/user/**" access="PERMISSION_VIEW_USER" />
                             .....
            </security:filter-security-metadata-source>
        </property>
    </bean>


    <bean id="accessDecisionManager"
        class="org.springframework.security.access.vote.AffirmativeBased" >
        <property name="decisionVoters">
            <list>
                <bean class="org.springframework.security.access.vote.RoleVoter" />
                <bean class="org.springframework.security.access.vote.RoleVoter">
                    <property name="rolePrefix" value="PERMISSION_"/>
                </bean>
            </list>
        </property>

问题1: -

我无法理解带有class "RoleVoter"的两个bean元素在这里扮演的角色是什么?我的意思是单身角色选民不够吗?

问题2: -

也在一个豆下 属性na me="rolePrefix" value="PERMISSION_"如何帮助?

我对第二个问题的理解是当用户尝试访问URL / user /时,RoleVoter会将授予的权限与值相匹配 给出访问属性(在这种情况下为PERMISSION_VIEW_USER),它也应该以&#34; PERMISSION _&#34;(作为rolePrefix的值给出)开头。 是吗?

我通过[此链接] [1]确认了有关问题2的理解。不要为此烦恼。

0 个答案:

没有答案