SpringSecurity---实现图形验证码的AuthenticationProvider

package com.zcw.demospringsecurity.demo7;

import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
import org.springframework.security.authentication.dao.DaoAuthenticationProvider;
import org.springframework.security.core.AuthenticationException;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Component;

/**
 * @ClassName : MyAuthenticationProvider
 * @Description : 校验图形验证码
 * @Author : Zhaocunwei
 * @Date: 2020-04-10 23:31
 */
@Component
public class MyAuthenticationProvider extends DaoAuthenticationProvider {

    public MyAuthenticationProvider(UserDetailsService userDetailsService,
                                    PasswordEncoder passwordEncoder){
        this.setUserDetailsService(userDetailsService);
        this.setPasswordEncoder(passwordEncoder);
    }
    @Override
    protected void additionalAuthenticationChecks(UserDetails userDetails,
                                                  UsernamePasswordAuthenticationToken  usernamePasswordAuthenticationToken)
        throws AuthenticationException {
        //调用父类方法完成密码验证
        super.additionalAuthenticationChecks(userDetails,usernamePasswordAuthenticationToken);
    }
}

发布了458 篇原创文章 · 获赞 15 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/qq_32370913/article/details/105552301