KU案例2之20 清理plainPassword字段

我们正在混乱的使用我们的密码字段。现在表达提交纯文本密码,然后再编辑密码并存储。这不是一个好的解决方案,如果我们忘记了加密密码怎么办?明文的密码就会保存到数据库,而不会有任何错误提示。

我们要在User实体里创建一个plainPassword属性。让我们加入getter和setter方法吧:

此属性和其他的一样,但是他没有被保存到数据库。他的作用只是存储临时数据。

 

使用eraseCredentials

找到eraseCredentials方法并清空plainPassword字段:

这个方法并不重要,但是他会在身份认证中使用,其目的是确保你的用户没有敏感数据。

 

使用plainPassword

现在,更新你的form代码-改变password字段为plainPassword:

不要忘了更新一下模版

现在,当我们提交表单时,就会用到User的plainPassword。使用它来实时编译密码属性:

让我们来试试吧!注册一个新会员,并尝试登录。

 

发表评论