我有一个密码黑名单,我不希望用户在我们的Rails应用程序中创建帐户或更改密码时可以选择。
我希望它在数据库表而不是YAML文件中。
如何查看/检查用户提交的密码是否存在于此列表中?有什么办法吗?
我觉得我不需要为它创建一个ActiveRecord模型等。
答案 0 :(得分:1)
如何查看/检查用户提交的密码是否存在于此列表中?有什么办法吗?
如果你加密你的用户密码(比如我希望你这样做),执行这项检查有点挑战(事实上,这正是盐加密密码的目的之一)。
对于数据库中的每个用户,您将需要循环每个密码,使用当前的加密策略对其进行加密,并将结果与存储在数据库中的加密字符串相匹配。如果它们匹配,则表示用户正在使用其中一个密码。
这就是已存储的密码。
我不希望用户能够在我们的Rails应用中创建帐户或更改密码时选择。
这比上一步更容易。当用户注册或更新密码时,只需将用户输入的未加密密码与您拥有的密码进行比较。如果匹配,则返回验证错误。