spring security3 xml配置详细说明注释

由于项目需要spring security架构,找了很多地方没有对该架构下xml文件的详细说明,最后找到了这一篇文章http://zhoualine.iteye.com/blog/1755233,这篇文章对各个标签的含义还比较详细,根据注释,可以理解一下xml配置的含义,供大家一起学习,共勉!

其中springsecurity.xml的详细注释如下:

  1. xml version="1.0" encoding="UTF-8"?>  
  2. <beans:beans xmlns="http://www.springframework.org/schema/security"  
  3.     xmlns:beans="http://www.springframework.org/schema/beans"   
  4. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  5. xsi:schemaLocation="http://www.springframework.org/schema/beans   
  6. http://www.springframework.org/schema/beans/spring-beans-3.0.xsd    
  7. http://www.springframework.org/schema/security   
  8. http://www.springframework.org/schema/security/spring-security-3.1.xsd">  
  9.     <global-method-security pre-post-annotations="enabled">  
  10.     global-method-security>  
  11.       
  12.     <http pattern="/include/js/**" security="none" />  
  13.     <http pattern="/include/css/**" security="none" />  
  14.     <http pattern="/include/scripts/**" security="none" />  
  15.     <http pattern="/include/jsp/**" security="none" />  
  16.     <http pattern="/images/**" security="none" />  
  17.     <http pattern="/login.jsp" security="none" />  
  18.       
  19.       
  20.           
  21.       
  22.       
  23.       
  24.     <http use-expressions="true" auto-config="true"  
  25.         access-denied-page="/include/jsp/timeout.jsp">  
  26.   
  27.   
  28.           
  29.           
  30.   
  31.           
  32. <form-login login-page="/login.jsp" default-target-url='/system/default.jsp'  
  33.         always-use-default-target="true" authentication-failure-url="/login.jsp?login_error=1" />  
  34.   
  35.           
  36.           
  37.         <logout invalidate-session="true" logout-success-url="/login.jsp"  
  38.             logout-url="/j_spring_security_logout" />  
  39.           
  40.         <remember-me />  
  41.   
  42.           
  43.   
  44.    
  45.   
  46.   
  47.         <session-management invalid-session-url="/login.jsp"  
  48.             session-fixation-protection="none">  
  49.             <concurrency-control max-sessions="1"  
  50.                 error-if-maximum-exceeded="false" />  
  51.         session-management>  
  52.         <custom-filter ref="myFilter" before="FILTER_SECURITY_INTERCEPTOR" />  
  53.         <session-management  
  54.             session-authentication-strategy-ref="sas" />  
  55.   
  56.     http>  
  57. <beans:bean id="sas"  
  58. class="org.springframework.security.web.authentication.session.ConcurrentSessionControlStrategy">  
  59.         <beans:constructor-arg name="sessionRegistry"  
  60.             ref="sessionRegistry" />  
  61.         <beans:property name="maximumSessions" value="1" />  
  62.           
  63.         <beans:property name="alwaysCreateSession" value="true" />  
  64.         <beans:property name="migrateSessionAttributes" value="false" />  
  65.           
  66.         <beans:property name="exceptionIfMaximumExceeded"  
  67.             value="false" />  
  68.     beans:bean>  
  69.     <beans:bean id="sessionRegistry"  
  70.         class="org.springframework.security.core.session.SessionRegistryImpl" />  
  71.       
  72.       
  73.     <beans:bean  
  74.         class="org.springframework.security.authentication.event.LoggerListener" />  
  75.       
  76.     <beans:bean id="messageSource"  
  77. class="org.springframework.context.support.ReloadableResourceBundleMessageSource">  
  78.         <beans:property name="basenames" value="classpath:message_zh_CN">  
  79. beans:property>  
  80.     beans:bean>  
  81.       
  82.     <beans:bean id="myFilter"  
  83.         class="com.taskmanager.web.security.MySecurityFilter">  
  84.       
  85.     <beans:property name="authenticationManager" ref="myAuthenticationManager" />  
  86.       
  87.     <beans:property name="accessDecisionManager" ref="myAccessDecisionManager" />  
  88.       
  89.     <beans:property name="securityMetadataSource" ref="mySecurityMetadataSource" />  
  90.     beans:bean>  
  91.       
  92.     <authentication-manager alias="myAuthenticationManager">  
  93.         <authentication-provider user-service-ref="myUserDetailServiceImpl">  
  94.               
  95.             <password-encoder hash="md5" ref="passwordEncoder">  
  96.             password-encoder>  
  97.         authentication-provider>  
  98.     authentication-manager>  
  99.       
  100.     <beans:bean id="myAccessDecisionManager"  
  101.         class="com.taskmanager.web.security.MyAccessDecisionManager">  
  102.     beans:bean>  
  103.       
  104.     <beans:bean id="mySecurityMetadataSource"  
  105.         class="com.taskmanager.web.security.MySecurityMetadataSource">  
  106.         <beans:constructor-arg name="powerService" ref="powerService">  
  107. beans:constructor-arg>  
  108.     beans:bean>  
  109.       
  110.     <beans:bean id="myUserDetailServiceImpl"  
  111.         class="com.taskmanager.web.security.MyUserDetailServiceImpl">  
  112.         <beans:property name="userService" ref="userService">beans:property>  
  113.     beans:bean>  
  114.   
  115.       
  116.     <beans:bean id="passwordEncoder"  
  117. class="org.springframework.security.authentication.encoding.Md5PasswordEncoder" />  
  118. beans:beans>    
再贴上一个web.xml的配置(红色标注部分是重点)

  1. xml version="1.0" encoding="UTF-8"?>  
  2. <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"  
  3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  4.     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   
  5.     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  
  6.     <context-param>  
  7.         <description>Spring applicationContextdescription>  
  8.         <param-name>contextConfigLocationparam-name>  
  9.         <param-value>  
  10.             /WEB-INF/spring/application*.xml  
  11.         param-value>  
  12.     context-param>  
  13. <listener>  
  14.         <description>SpringContextLoaderListenerdescription>  
  15.         <display-name>SpringContextLoaderListenerdisplay-name>  
  16. <listener-class>org.springframework.web.context.ContextLoaderListenerlistener-class>  
  17.     listener>  
  18.   
  19.     <filter>  
  20.         <filter-name>springSecurityFilterChainfilter-name>  
  21.         <filter-class>org.springframework.web.filter.DelegatingFilterProxyfilter-class>  
  22.     filter>  
  23.     <filter-mapping>  
  24.         <filter-name>springSecurityFilterChainfilter-name>  
  25.         <url-pattern>*.jhurl-pattern>  
  26.         <url-pattern>*.jspurl-pattern>  
  27.         <url-pattern>/j_spring_security_checkurl-pattern>  
  28.         <url-pattern>/j_spring_security_logouturl-pattern>  
  29.     filter-mapping> 

你可能感兴趣的:(sping,security)