Grails Spring Security Plugin将用户密码从1.2.7.3迁移到2.0

Rob*_*uie 2 grails spring-security grails-plugin

我正在使用Grails 2.3.2并尝试将我的Spring Security Core Plugin从1.2.7.3升级到2.0.

我做了所有导入更改并启动了我的应用程序,但我无法登录.2.0中的一个变化是它使用bcrypt算法进行密码,使我所有的旧密码都无用.所以,我在我的应用程序中完成了密码重置过程,并且在此之后我可以登录就好了.

但是,我想保留所有用户的旧密码,所以我找到了该插件的1.2.7.3版本的文档,并查找了它使用的算法:http://grails-plugins.github.io/ 的grails-弹簧安全核/文档/ manual.1273 /导向/ 12%20Password%20于是%20Account%20Protection.html

根据这些文档,它的默认值是SHA-256.所以,我添加了配置更改,但我仍然无法登录.

那么,我如何将我的所有用户密码迁移到2.0版本的插件?截至目前,它似乎不可能......

Bur*_*ith 8

还有另一个变化 - 哈希迭代次数.在1.2.x中,密码被哈希一次,但是在2.0中,密码拉伸的密码为10,000次 - 请参阅http://grails-plugins.github.io/grails-spring-security-core/2.0.x/guide/passwords.html #hashing

添加此项以恢复旧行为:

grails.plugin.springsecurity.password.algorithm = 'SHA-256'
grails.plugin.springsecurity.password.hash.iterations = 1
Run Code Online (Sandbox Code Playgroud)