认证过程中的重要类

目录

 

1.WebSecurityConfigurerAdapter   security的配置类

2.UserDetailsService  接口,实现它来做用户的查询

3.BCryptPasswordEncoder  用户密码加密类

4.UserDetails 接口 根据用户名查询返回的用户信息

5.HttpSessionRequestCache  security会把当前的请求缓存在这个类里面,利用它可以拿到缓存的请求

6.RedirectStrategy  security中做重定向的接口

7@Configuration,@ConfigurationProperties,@EnableConfigurationProperties

对yml配置进行封装

8.WebMvcConfigurer 添加请求映射,直接映射到templates,不走Controller9. AuthenticationSuccessHandler,AuthenticationFailureHandler

SavedRequestAwareAuthenticationSuccessHandler,SimpleUrlAuthenticationFailureHandler  登录成功或失败的处理接口以及Security默认的处理事件

10.ObjectMapper  隶属于jsckosn,json与对象之间转换,用于页面输出

11.UsernamePasswordAuthenticationFilter  表单登录的过滤器

12.ProviderManager  表单登录的Manager

13.AbstractUserDetailsAuthenticationProvider,DaoAuthenticationProvider 表单登录的Provider

14.SecurityContext  对认证结果的简单封装

15.SecurityContextHolder 对ThreadLocal做了封装

16.SecurityContextPersistenceFilter  过滤器链上的第一个过滤器实现了认证结果在多个请求之间的共享

17.BufferedImage  用来存储生成的图片验证码

18.SessionStrategy  操作session的类

19.ImageIO  将图形验证码输出到页面的IO

20.OncePerRequestFilter  security中只会执行一次的过滤器

 21.Security中的异常抛出都为AuthenticationException类型

 


1.WebSecurityConfigurerAdapter   security的配置类

   

2.UserDetailsService  接口,实现它来做用户的查询

  

3.BCryptPasswordEncoder  用户密码加密类

 

4.UserDetails 接口 根据用户名查询返回的用户信息

  

5.HttpSessionRequestCache  security会把当前的请求缓存在这个类里面,利用它可以拿到缓存的请求

6.RedirectStrategy  security中做重定向的接口

7@Configuration,@ConfigurationProperties,@EnableConfigurationProperties

对yml配置进行封装

8.WebMvcConfigurer 添加请求映射,直接映射到templates,不走Controller
9. AuthenticationSuccessHandler,AuthenticationFailureHandler

SavedRequestAwareAuthenticationSuccessHandler,SimpleUrlAuthenticationFailureHandler  登录成功或失败的处理接口以及Security默认的处理事件

 

10.ObjectMapper  隶属于jsckosn,json与对象之间转换,用于页面输出

11.UsernamePasswordAuthenticationFilter  表单登录的过滤器

12.ProviderManager  表单登录的Manager

13.AbstractUserDetailsAuthenticationProvider,DaoAuthenticationProvider 表单登录的Provider

14.SecurityContext  对认证结果的简单封装

15.SecurityContextHolder 对ThreadLocal做了封装

16.SecurityContextPersistenceFilter  过滤器链上的第一个过滤器实现了认证结果在多个请求之间的共享

17.BufferedImage  用来存储生成的图片验证码

18.SessionStrategy  操作session的类

   

19.ImageIO  将图形验证码输出到页面的IO

  

20.OncePerRequestFilter  security中只会执行一次的过滤器

  

 21.Security中的异常抛出都为AuthenticationException类型

  

  22. ServletRequestUtils  拿到Request请求里面的参数的工具类

      

  23.InitializingBean  当Bean的属性装配完成后就会执行afterPropertiesSet()这个方法。依赖注入发生在用户第一次向IOC容器索要Bean时才开始依赖注入过程(也可以通过配置lazy-init属性让容器初始化的时候就对Bean预实例化)

      需要注意的是实现了InitializingBean接口的类必须要交给Bean容器来来管理他的afterPropertiesSet()才会被执行。

  24.AntPathMatcher spring中匹配路径的工具类。

  25.PersistentTokenRepository,Security中持久化Token的接口,实现的方式有两种,一种是内存,一种是数据库。

  

 选择数据库的方式他会去创建表:

26.ServletWebRequest  Spring的工具类,他的作用是封装请求和响应,如果应用需要Request和Response不用每次都传两个参数。

27.@ConditionalOnMissingBean  条件装配的注解

28.

开发技巧:

 以增量的方式适应变化

 模板方法:主干逻辑相同而其中步骤有些不同的这种代码,会用模板方法模式把他抽象出来

 依赖搜索:请求的后半段不同,拿出来的生成器的实现也不同。

 开发技巧:分层的封装,将主干逻辑和生成逻辑来分开封装。什么好处呢?比如现在短信验证码的生成逻辑和发送逻辑都变了,那么可以直接实现ValidateCodeProcessor接口重写整个逻辑,如果只是生成逻辑变了,那么实现这个ValidateCodeGenerator接口就行了。总体来说就是去分层的封装系统中可能出现变化的部分。

 

猜你喜欢

转载自blog.csdn.net/weixin_37650458/article/details/106652265