0
点赞
收藏
分享

微信扫一扫

SpringSecurity+JWT

深夜瞎琢磨 2022-03-26 阅读 106
java

1.SpringSecurity简介?

        什么是安全框架?解决系统安全的框架。如果没有安全框架,我们需要处理每个资源访问的控制,非常麻烦。使用安全框架,我们可以通过配置的方式实现对资源的访问限制。两个重要功能:认证和授权。

2.自定义认证的时候需要实现UserDetailsService接口

接口中只有一个方法,返回UserDetails类,参数username是前端传过来的

看一下UserDetails:

 查看其中的方法:

获得所有权限,但不能返回空

 获取密码

获取用户名,

 判断用户账号是否过期

判断用户是否被锁定

 凭证是否过期

账户是否可用

 SpringlSecurity提供了该UserDetails接口的实现类:User,该类与我们自定义的类不同。

 该类的构造方法:password是数据库中查出来的密码,来与前端传过来的密码进行比对,如果相同则认证通过

 3.自定义认证需要实现PasswordEncode接口

public interface PasswordEncoder{

    //对传入的密码进行加密
    String encode(CharSequence  rawPassword);

    //匹配,将原密码与加密的密码,做对应比较,若对应,则为true
    boolean matches(CharSequence rawPassword,String encodePassword);

}


//SpringSecurity提供了好多个PasswordEncoder接口的实现类,官方推荐使用BCryptPasswordEncoder类
public class BCryptPasswordEncoder implements PasswordEncoder{

}

 

 

 

举报

相关推荐

0 条评论