spring auto-config

时间:2022-12-04 19:25:56

spring security auto-config

auto-config配置

    <http auto-config="true">

    </http>

自动添加的10个filter

o.s.s.web.context.SecurityContextPersistenceFilter

负责从 SecurityContextRepository 获取或存储 SecurityContext。

SecurityContext 代表了用户安全 和认证过的 session。

o.s.s.web.authentication.logout.LogoutFilter

监控一个实际为退出功能的 URL(默认为 /j_spring_security_logout)

并且在匹配的时候完成用户的退出功能。

o.s.s.web.authentication.UsernamePasswordAuthenticationFilter

监控一个使用用户名和密码基于 form 认证的 URL (默认为/j_spring_security_check)

并在 URL 匹配的情况下尝试认证该用户。

o.s.s.web.authentication.ui.DefaultLoginPageGeneratingFilter

监控一个要进行基于 form 或 OpenID 认证的 URL (默认为/spring_security_login)

并生成展现登录 form 的 HTML

o.s.s.web.authentication.www.BasicAuthenticationFilter

监控 HTTP 基础认证的头信息并进行处理

o.s.s.web.savedrequest.RequestCacheAwareFilter

用于用户登录成功后,重新恢复因为登录被打断的请求。

o.s.s.web.servletapi.SecurityContextHolderAwareRequestFilter

用一个扩展了 HttpServletRequestWrapper 的子类 ( o.s.s.web.servletapi.SecurityContextHolderAwareRequestWrapper)

包装 HttpServletRequest。它为请求处理器供了额外的上下文信息。

o.s.s.web.authentication.AnonymousAuthenticationFilter

如果用户到这一步还没有经过认证,将会为这个请求关联一个认证的 token,标识此用户是匿名的。

o.s.s.web.session.SessionManagementFilter

根据认证的安全实体信息跟踪 session,保证所有关联一个安全实体的 session 都能被跟踪到。

o.s.s.web.access.ExceptionTranslationFilter

解决在处理一个请求时产生的指定异常

o.s.s.web.access.intercept.FilterSecurityInterceptor

简化授权和访问控制决定,委托一个 AccessDecisionManager 完成授权的判断