这是在视图中
<g:passwordField name="password" required="" value="${usuarioInstance?.password}"/>
这将是控制器的一部分
pass = params.password.encodeAsSHA1()
这将再次返回到视图中 $ {pass.password}
$ {pass.password}需要更改为文本或解码SHA1()
答案 0 :(得分:4)
我的建议:
安全是每个开发人员都需要认真对待的事情,如果客户坚持不安全的做法,那么他们需要接受教育。
编辑:@zaph在下面提出了一个很好的观点,所以我应该添加它 - 不要加密密码。密码永远不能转换回纯文本。始终散列(和盐)它们并将用户输入散列与存储的散列进行比较。如果您选择不使用Spring Security,则可以使用Bcrypt standalone并使用静态Bcrypt.checkpw(userInputPw, hashedPw)
方法进行检查。
最终编辑:为了避免任何混淆(因为@zaph在评论中似乎很困惑)我的建议是使用Bcrypt - 特别是使用Spring Security。