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对象

    本博客内容参考资料均来自于网络,如有侵权,请邮箱联系,我去处理,谢谢合作。
  • 相关阅读:
    java线程的几种状态
    java事务的处理
    Java多线程中Sleep与Wait的区别
    分享一百多套开发视频教程的下载地址
    [Java]读取文件方法大全
    Android开发人员必备的10 个开发工具
    CentOS 安装MySQL rpm方式安装
    记录一些经典的算法
    CentOS 7安装Redis服务
    linux查看文件大小,磁盘占用情况 du df命令
  • 原文地址:https://www.cnblogs.com/javazl/p/12439635.html
Copyright © 2011-2022 走看看