package org.molgenis.security.core; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.security.crypto.password.PasswordEncoder; public class MolgenisPasswordEncoder implements PasswordEncoder { private final BCryptPasswordEncoder bCryptPasswordEncoder; public MolgenisPasswordEncoder(BCryptPasswordEncoder bCryptPasswordEncoder) { if (bCryptPasswordEncoder == null) throw new IllegalArgumentException("BCrypt password encoder is null"); this.bCryptPasswordEncoder = bCryptPasswordEncoder; } @Override public String encode(CharSequence rawPassword) { return bCryptPasswordEncoder.encode(rawPassword); } @Override public boolean matches(CharSequence rawPassword, String encodedPassword) { return bCryptPasswordEncoder.matches(rawPassword, encodedPassword); } }