生成密码
public class Sha256PasswordHelper {
public static String encryption(String username, String pwd) {
return new Sha256Hash(pwd, username,1024).toString();
}
}
散列算法配置,默认hex编码【这里的编配配置需和Sha256PasswordHelper 这里同步,我这里选择默认hex】
@Bean
public HashedCredentialsMatcher credentialsMatcher() {
HashedCredentialsMatcher credentialsMatcher = new HashedCredentialsMatcher();
// 散列算法,这里使用更安全的sha256算法
credentialsMatcher.setHashAlgorithmName(Sha256Hash.ALGORITHM_NAME);
// 散列迭代次数
credentialsMatcher.setHashIterations(1024);
return credentialsMatcher;
}
realm处理
return new SimpleAuthenticationInfo(username, 数据库假面密码,ByteSource.Util.bytes(username), getName());
明文传输
UsernamePasswordToken token = new UsernamePasswordToken(username, password);
SecurityUtils.getSubject().login(token);
版权声明:本文为u010138825原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。