【问题标题】:Devise use an alternative to password设计使用密码的替代方法
【发布时间】:2016-11-07 13:45:59
【问题描述】:

我目前正在开发一个需要特殊身份验证的项目。我得到了一个用户列表,其中包括他们的会员号以及他们的名字和姓氏。

我正在使用 devise 进行身份验证,我想使用该号码加上他们的名字和姓氏的组合进行身份验证,例如:

01272726
Bruce Wayne

我已从电子邮件身份验证切换到 uuid(会员号),但我不知道如何将密码替换为名称。

我考虑过在将用户上传到数据库时为他们生成密码,但不知道如何加密它。 :/

我希望有人可以帮助我。谢谢!

【问题讨论】:

  • 会员号和密码一样保密吗?您是否将会员编号保存在文件(或数据库)中?
  • @zaph 是的,这是秘密。我有一个 csv,其中包含名字、姓氏和数字的单列
  • 如果将会员号用作密码,即秘密登录凭据,则不得将其保存为纯文本或加密在任何文件中。不要加密密码,如果 encrypterd 在攻击者获取 CSV 文件时,他也会得到加密密钥。使用随机盐在 HMAC 上迭代大约 100 毫秒,然后将盐与哈希一起保存。使用 password_hash、PBKDF2、Bcrypt 等函数和类似函数。关键是让攻击者花费大量时间通过蛮力寻找密码。
  • 在阅读您的评论时,我正在考虑仅使用该数字作为实际密码并使用 User.create(...., password: number) 创建用户

标签: authentication devise ruby-on-rails-5


【解决方案1】:

我最终只使用密码列作为我的“替代方案”。导入用户时,我只是使用密码列作为唯一成员编号,而不是使用另一列。

【讨论】:

    猜你喜欢
    • 2021-11-26
    • 2014-05-14
    • 1970-01-01
    • 2016-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-15
    相关资源
    最近更新 更多