spring security 3.0.X开始, org.springframework.security.web.access.intercept.FilterSecurityInterceptor中的ObjectDefinitionSource已被舍弃,继而由SecurityMetadataSource代替.
原来securiyt.xml中的配置如:
<bean id="filterSecurityInterceptor" class="org.springframework.security.intercept.web.FilterSecurityInterceptor">
<property name="authenticationManager" ref="authenticationManager"/>
<property name="accessDecisionManager" ref="accessDecisionManager"/>
<property name="objectDefinitionSource">
<value>
<![CDATA[
CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
PATTERN_TYPE_APACHE_ANT
/myaccountsetting/*= ROLE_ADMIN
/portal/*= ROLE_ANYONE
]]>
</value>
</property>
<property name="observeOncePerRequest" value="false" />
<sec:custom-filter after="LAST" />
</bean>
需转成:
<beans:bean id="filterSecurityInterceptor" class="org.springframework.security.web.access.intercept.FilterSecurityInterceptor">
<beans:property name="authenticationManager" ref="authenticationManager"/>
<beans:property name="accessDecisionManager" ref="accessDecisionManager"/>
<beans:property name="securityMetadataSource">
<filter-security-metadata-source>
<intercept-url pattern="/myaccount/*" access="ROLE_ADMIN" />
<intercept-url pattern="/portal/*" access="ROLE_ANYONE" />
</filter-security-metadata-source>
</beans:property>
<beans:property name="observeOncePerRequest" value="false" />
</beans:bean>
分享到:
相关推荐
<property name="objectDefinitionSource"> CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON PATTERN_TYPE_APACHE_ANT /signup.html = ROLE_ANONYMOUS,admin,tomcat /passwordhint.html *= ROLE_ANONYMOUS,admin...
这由ObjectDefinitionSource接口处理,其`getAttributes(Object object)`方法返回与安全管理对象相关的ConfigAttributeDefinition。 总的来说,Acegi Security通过一系列组件和接口,构建了一个强大的安全框架,它...
7. ObjectDefinitionSource:提供授权规则的来源,定义哪些操作需要哪些权限。 Ajax,即异步JavaScript和XML,是Web3.0的核心技术,通过局部刷新页面实现用户体验的提升。其核心技术包括: 1. 标准化的表示层...
7. **ObjectDefinitionSource**:存储特定操作的授权定义,是安全策略的具体体现。 这些组件之间的交互关系形成了Acegi Security系统的安全控制流程,确保了系统的安全性与灵活性。 ### 安全管理对象与配置 Acegi...
- **objectDefinitionSource**: 定义了 URL 匹配模式及角色权限。 ##### 2.6 认证管理器配置 - **`<bean id="daoAuthenticationProvider">`**: 定义了一个认证提供者。 - **class**: 自定义认证提供者的实现类。 -...