我使用Spring Security和bcrypt进行密码安全。
它实际上是在Grails应用程序中。当应用程序启动时,我得到:
"没有这样的算法[bcrypt]"
我将错误跟踪到Spring安全性中的代码:
try {
return MessageDigest.getInstance(algorithm);
}
catch (NoSuchAlgorithmException e) {
throw new IllegalArgumentException("No such algorithm [" + algorithm + "]");
}
如何将bcrypt安装到Java Security?
我在CentOS 7上运行Oracle JDK 1.8.0_73-b02。
答案 0 :(得分:0)
问题是代码:
messageDigestPasswordEncoder(MessageDigestPasswordEncoder, conf.password.algorithm) {
encodeHashAsBase64 = conf.password.encodeHashAsBase64
iterations = conf.password.hash.iterations
}
默认情况下,Grails 3 spring-core插件配置conf.password.algorithm =“bcrypt”
我以为我在配置中覆盖了它,但那是在Config.groovy中。在grails 3中,config需要移动到application.groovy