21 Ağustos 2020 Cuma

SpringSecurity PasswordEncoder Arayüzü

Giriş
Şu satırı dahil ederiz.
import org.springframework.security.crypto.password.PasswordEncoder;
Bu arayüz deprecate edilen org.springframework.security.authentication.encoding.PasswordEncoder arayüzün yerine geldi. Bu arayüzü gerçekleştiren bir sürü sınıf var. Bazıları şöyle

AbstractPasswordEncoder, 
DelegatingPasswordEncoder, 
LdapShaPasswordEncoder, 
MessageDigestPasswordEncoder, 
NoOpPasswordEncoder, 
StandardPasswordEncoder

Örnek
Şöyle yaparız
@Bean
public PasswordEncoder getPasswordEncoder(){
  return NoOpPasswordEncoder.getInstance();
}
Örnek
Şöyle yaparız
class SHA512PasswordEncoder implements PasswordEncoder {

  @Override
  public String encode(CharSequence rawPassword) {
    return DigestUtils.sha512Hex(rawPassword.toString());
  }

  @Override
  public boolean matches(CharSequence rawPassword, String encodedPassword) {
    return DigestUtils.sha512Hex(rawPassword.toString()).equals(encodedPassword);
  }
        
}
encode metodu
İmzası şöyle.
@Override
public String encode(CharSequence rawPassword);
matches metodu
İmzası şöyle.
@Override
public boolean matches(CharSequence rawPassword, String encodedPassword);

Hiç yorum yok:

Yorum Gönder