spring security入门实例

头一次使用security,简单的基于xml配置,做点笔记。

security配置

 


       
        
                login-page="/auth/toLogin"  
        default-target-url="/management/toManagement"
            username-parameter="j_username"
            password-parameter="j_password"
            authentication-failure-url="/auth/toLogin"/>  
                logout-url="/auth/toLogout"
            invalidate-session="true" />
       
         
             
       
 
   
              
   
   
   
   
   

   

   

上面的路径,都是controller里面的requestMapping的路径,最开始对这些路径比较困惑,网上一些例子都是路径和jsp路径一起混用的,所以为了方便自己,我就都用了配置的路径。


然后还有一点,在有上传文件的页面上,csrf安全配置的问题。

默认使用文件上传使用apache commons upload会出现csrf报错的问题,会报找不到csrf token,debug代码的时候,可以看看csrfFilter,request里面是没有携带页面里面配的csrf信息的。

有3个办法能解决吧

1.可以在security里面禁止使用

2.把csrf的token信息放到访问的url里面

3.为了安全的目的,还是想办法处理一下

既然做安全的,1,2都不太好,所以来说说3的配置

改用servlet3 自带的文件上传功能,在spring-servlet里面配上下面的bean

   class="org.springframework.web.multipart.support.StandardServletMultipartResolver">  
 

在web.xml里面配置如下的filter,要求放在spring-security的filter上面


   MultipartFilter
   org.springframework.web.multipart.support.MultipartFilter


   MultipartFilter
   /*

对应上传文件的大小限制可以在web.xml的spring-servlet的部分配置


servlet
org.springframework.web.servlet.DispatcherServlet

contextConfigLocation
/WEB-INF/spring-servlet.xml

2
 
             
           10485760  
       
 

csrf 部分参考 http://stackoverflow.com/questions/25185578/spring-security-3-2-csrf-and-multipart-requests

你可能感兴趣的:(spring)