【发布时间】:2012-04-02 17:41:17
【问题描述】:
我认为这是一个简单的,我想在密码重置期间显示身份验证密钥。
首先,这样做有什么问题吗?有什么我要打开的洞吗?我控制何时创建用户并发送 signup_instructions。我只有大约 500 个用户。我的系统在很多情况下,一年只使用几次,小公司只有一两个员工,平均有 10 名员工。我们服务的一些公司不是为员工创建多个帐户,而是共享一个或多个帐户,即我为公司的特定人员创建它,然后他们与他们的助手共享密码。我使用电子邮件地址作为身份验证密钥。
你能猜出接下来会发生什么吗?这真的发生了!用户去度假,小助理需要登录,忘记密码,但精通点击忘记密码并重置,她在老板不在时阅读老板的电子邮件。老板度假回来,需要登录,不能,但不够精明,无法点击忘记密码,也没有费心阅读她离开时收到的电子邮件。所以她惊慌失措地打电话生气,“怎么了,我无法登录!!!”。我的许多用户都是这样,年纪大了,不懂计算机。
所以我需要采取额外的步骤来证明重置密码是愚蠢的,我认为这应该包括他们将要重置的电子邮件地址的突出显示,以及提醒任何“共享”帐户的人通知他们的同事的措辞-工人如果他们重置。
我在我的设计/密码/编辑中尝试过这个
<%= resource.email %>
上面的代码没有任何结果!
【问题讨论】:
-
通常要重置密码,用户必须输入要重置的帐户的电子邮件地址。这不是你正在做的方法吗?您不希望人们能够重置其他用户帐户。
-
是的,我的重置密码链接要求您输入电子邮件地址,它几乎是标准的 device/passwords/new.html.erb 格式以匹配我的网站设计
-
这就是你所做的一切。无需向用户(或潜在的入侵者)提供更多信息。共享帐户通常不受欢迎,但如果他们这样做,那么您的责任就到此为止。您无需更改任何内容,就像用户决定与他们的助手共享帐户并且助手更改了某些内容一样,这不是您的问题。
-
这不是我担心的责任,我只是想阻止 IRATE 电话。这种带有年轻助手的“年长不精通的经纪人”场景在我的世界中相当普遍。
标签: ruby-on-rails ruby-on-rails-3 devise