博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring security原理
阅读量:4309 次
发布时间:2019-06-06

本文共 1467 字,大约阅读时间需要 4 分钟。

spring security通过一系列过滤器实现其功能,入口过滤器如下(web.xml):

<filter>

<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

其他过滤器调用顺序:

 

然后通过org.springframework.security.web.FilterChainProxy过滤器获取以下过滤器列表:

org.springframework.security.web.context.SecurityContextPersistenceFilter@4976abb4

org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@3ea61bd9

org.springframework.security.web.authentication.logout.LogoutFilter@469ddd58

org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter@443b70fc

org.springframework.security.web.savedrequest.RequestCacheAwareFilter@386c58c4

org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@361af4c3

org.springframework.security.web.authentication.AnonymousAuthenticationFilter@1ec59845

org.springframework.security.web.session.SessionManagementFilter@1e6a7f1

org.springframework.security.web.access.ExceptionTranslationFilter@5b167571

org.springframework.security.web.access.intercept.FilterSecurityInterceptor@3a4b2e3c

然后由内部类 VirtualFilterChain 依次调用这些过滤器实现其认证、授权等功能 (org.springframework.security.web.FilterChainProxy$VirtualFilterChain)

细节可参考某大牛的文章:

http://dead-knight.iteye.com/category/220917

转载于:https://www.cnblogs.com/SEC-fsq/p/5231224.html

你可能感兴趣的文章
TC中HTB的使用备注
查看>>
深入学习Redis(1):Redis内存模型
查看>>
当Eclipse爱上SVN
查看>>
hdu 4586 Play the Dice (概率+等比数列)
查看>>
阿里云api调用做简单的cmdb
查看>>
软考笔记
查看>>
ORACLE 日期函数
查看>>
【Java基础总结】数据库编程
查看>>
SVN commit:remains in tree-conflict错误的解决办法
查看>>
PHP不使用内置函数intval(),实现字符串转整数
查看>>
HYSBZ 2243 染色 LCT学习
查看>>
Linux crontab命令详解与实例
查看>>
Log4j配置
查看>>
Swift与OC混编
查看>>
Image与Bitmap的区别及相互转换
查看>>
地图标注
查看>>
Messages
查看>>
C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 - 外部服务调用、内部服务调用优化,面向服务化的...
查看>>
IT民工创业之殇---续1
查看>>
How to build missing PHP 5.3 extensions on CentOS 5.6
查看>>