Spring Security 请求流程
2023-10-19 21:40:24   2  举报             
     
         
 当一个请求到达Spring Security过滤器链时,它首先会被AuthenticationManager进行身份验证。如果身份验证失败,则Filter将执行默认的拒绝处理流程(通常是返回HTTP 403错误)。如果身份验证成功,则Filter会调用授权管理器(AuthorizationManager)来检查用户是否具有访问所请求资源的权限。如果用户没有权限,则Filter将执行默认的拒绝处理流程。如果用户具有足够的权限,则请求将被传递给下一个过滤器或目标资源。在处理完请求后,Filter将清除与当前请求相关的所有安全性上下文信息。
    作者其他创作
 大纲/内容
 否
    是
  AuthenticationFailureHandler失败管理器
  AccessDeniedHandler权限不足处理类
  可继承实现自定义认证
  AuthenticationSuccessHandler成功管理器
  是否用户认证成功
  AccessDeniedException
  异常类型
  logoutFilter
  是否是登出请求
  ExceptionTranslationFilter异常处理过滤器
  AutenticationException
  实现并重写onAuthenticationFailure
  UsernamePasswordAuthicationFilter
  logoutSuccessHandler
  投票结果是否大于0
  抛出异常
  实现并重写onAuthenticationSuccess
  BasicAuthicationFilter(可继承自定义)
  是否认证成功
  根据url查找
  鉴权管理器
  authenticate方法
  用户请求
  AuthenticationEntryPoint认证失败处理类(校验token等)
  是否是登录请求
  filter链
  FilterSecurityInterceptor权限判断拦截器
  到达controller
  AuthenticationEntryPoint认证失败处理类
  用户信息解析放入SecurityContextHolder
  AuthenticationManagerr认证管理器
  否  且不抛出异常
  logoutHandler
   
 
 
 
 
  0 条评论
 下一页
  
   
   
   
   
  
  
  
  
  
  
  
  
 