zoukankan      html  css  js  c++  java
  • AuthenticationManager的认证流程

           上一篇讲了UserDetails(规范用户信息)和UserDetailService(获取用户信息)

           这篇 来讲获取用户信息后该如何认证,它的认证流程是什么?

              Spring Security 是一个安全管理框架,它的安全是基于一条长长的过滤器链,当用户发出一个请求时,首先会进入Security 的过滤器链中(之后我会更新一篇关于Security 过滤器链的详细文章,这篇就只就AuthenticationManager进行解析),当进入UsernamePasswordAuthenticationFitel这个过滤器的时候,会判断是否是登录路径,如果是,配置AuthenticationManagerBuilder会让Security自动构建一个认证管理器

    AuthenticationManager。以下是认证的配置:

    public class SecurityConfig extends WebSecurityConfigurerAdapter {
        @Autowired
        BookService bookService;
    
        @Override
        protected void configure(AuthenticationManagerBuilder auth) throws Exception {
       
           auth.userDetailsService(bookService).passwordEncoder(new BCryptPasswordEncoder());
        }

    UserDetailService会根据用户传过来的用户名查找一个用户,passwordEncoder用于密码的加密和比对,如果认证成功,则会返回一个Authentication对象

    本博客内容参考资料均来自于网络,如有侵权,请邮箱联系,我去处理,谢谢合作。
  • 相关阅读:
    JVM基础和调优(一)
    Jtree(节点的渲染+资源管理器)(2)
    Jtree (节点的渲染+资源管理器)
    jtree(选择框)
    java进阶计划
    SQL优化
    spring 事务管理
    Spring事务配置的五种方式(转)
    spring与数据库之间的配置
    struct2(六) 为表单添加验证
  • 原文地址:https://www.cnblogs.com/javazl/p/12439635.html
Copyright © 2011-2022 走看看