快速业务通道

Acegi + Spring + Hibernate + Struts 2搭建基于角色的权限控制 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-20
的代码也不要了.

三. 修改 web.xml, 增加安全控制过滤链.

<filter>         <filter-name>acegiFilterChain</filter-name>         <filter-class>org.acegisecurity.util.FilterToBeanProxy</filter-class>         <init-param>             <param-name>targetClass</param-name>             <param-value>org.acegisecurity.util.FilterChainProxy</param-value>         </init-param>     </filter> <filter-mapping>         <filter-name>acegiFilterChain</filter-name>         <url-pattern>*.j</url-pattern> </filter-mapping>

注意: 这个过滤器一定要在MVC转发过滤器的前面!!!!

四. 在 applicationContext.xml 中增加 Acegi安全控制拦截器 和 Spring的自动代理功能实现AOP代理

<!-- Acegi安全控制拦截器 --> <bean id="serviceSecurityInterceptor" class="org.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor"> <property name="validateConfigAttributes" value="true" /> <property name="authenticationManager" ref="authenticationManager" /> <property name="accessDecisionManager" ref="accessDecisionManager" /> <property name="objectDefinitionSource">    <bean class="org.acegisecurity.intercept.method.MethodDefinitionAttributes">     <property name="attributes">      <bean class="org.acegisecurity.annotation.SecurityAnnotationAttributes" />     </property>    </bean> </property> </bean> <!-- 利用Spring的自动代理功能实现AOP代理 --> <bean id="autoProxyCreator" class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator"> <property name="interceptorNames">    <list>     <value>transactionInterceptor</value>     <value>serviceSecurityInterceptor</value>    </list> </property> <property name="beanNames">    <list>     <value>userService</value>     <value>mailService</value>    </list> </property> </bean>

Acegi + Spring + Hibernate + Struts 2搭建基于角色的权限控制(4)

时间:2011-01-28 csdn博客 chenhongxin

五. 编写在利用Acegi框架唯一要我们编写的类 AcegiUserDeitailsService.java

package org.ymcn.security; import java.util.List; import org.acegisecurity.GrantedAuthority; import org.acegisecurity.GrantedAuthorityImpl; import org.acegisecurity.userdetails.UserDetails; import org.acegisecurity.userdetails.UserDetailsService; import org.acegisecurity.userdetails.UsernameNotFoundException; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.springframework.dao.DataAccessException; import org.ymcn.dao.UserDao; import org.ymcn.dao.UserRoleDao; import org.ymcn.model.User; i

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号