Spring Security之入门demo(xml配置文件方式)

此处使用spring Security3.1,springMVC+SpringSecurity。

配置文件:spring-security.xml



	

	
		
		
      	
      	
      	
      	
      	
	
	
	
	
   	
   	
   
	
		
			
				
				
			
		
	


        默认情况下,我们在登录成功后会返回到原本受限制的页面。但如果用户是直接请求登录页面,
        登录成功后应该跳转到哪里呢?默认情况下它会跳转到当前应用的根路径,即欢迎页面。
        通过指定 form-login 元素的 default-target-url 属性,我们可以让用户在直接登录后跳转到指定的页面。
        如果想让用户不管是直接请求登录页面,还是通过 Spring Security 引导过来的,登录之后都跳转到指定的页面,
        我们可以通过指定 form-login 元素的 always-use-default-target 属性为 true 来达到这一效果
        
        authentication-success-handler-ref 对应一个 AuthencticationSuccessHandler 
        实现类的引用。如果指定了 authentication-success-handler-ref,登录认证成功后会调用指定
        AuthenticationSuccessHandler 的 onAuthenticationSuccess 方法。
        我们需要在该方法体内对认证成功做一个处理,然后返回对应的认证成功页面。
        使用了 authentication-success-handler-ref 之后认证成功后的处理就由指定的
        AuthenticationSuccessHandler 来处理,之前的那些 default-target-url 之类的就都不起作用了。
        
        默认情况下登录失败后会返回登录页面,我们也可以通过 form-login 元素的 authentication-failure-url 
        来指定登录失败后的页面。需要注意的是登录失败后的页面跟登录页面一样也是需要配置成在未登录的情况下可以访问,
        否则登录失败后请求失败页面时又会被 Spring Security 重定向到登录页面。
        
        通过定义 http 元素下的 http-basic 元素可以达到弹窗认证效果
    

配置文件:web.xml



	Archetype Created Web Application
	
	
		login.html
	

	
	
		contextConfigLocation
		classpath:properties/spring-*.xml
	
	
		org.springframework.web.context.ContextLoaderListener
	

	
		springSecurityFilterChain
		org.springframework.web.filter.DelegatingFilterProxy
	
	
		springSecurityFilterChain
		/*
	

	
		springDispatcherServlet
		org.springframework.web.servlet.DispatcherServlet
		
			contextConfigLocation
			classpath:springmvc.xml
		
		1
	

	
	
		springDispatcherServlet
		*.do
	


注意此处的过滤器使用的是springSecurity的过滤器。另外,此处设置的welcome-file基本上没有起作用。

 

 

你可能感兴趣的:(Spring)