Shiro密码凭证匹配设置

生成密码
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版权协议,转载请附上原文出处链接和本声明。