问题标签 [forgot-password]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
20949 浏览

authentication - 忘记密码:实现忘记密码功能的最佳方法是什么?

我想知道在网站上创建忘记密码功能的最佳方法是什么。我已经看到了很多,这里有一些或组合:

  • 密码短语问题/答案(1 个或多个)
  • 使用新密码发送电子邮件
  • 在屏幕上输入新密码
  • 通过电子邮件确认:必须单击链接以获取新密码
  • 要求用户输入新密码的页面

您会为忘记密码功能添加哪些组合或附加步骤?我想知道他们如何请求新密码以及他们最终如何获得它。

我操作的主体是无法找回密码;必须提供/生成新密码。

编辑我喜欢科里所说的不显示用户名是否存在,但我想知道要显示什么。我在想问题的一半是用户忘记了他们使用的电子邮件地址,显示某种“不存在”消息很有用。有什么解决办法吗?

0 投票
6 回答
2724 浏览

security - 为什么质询-响应方法是忘记密码的糟糕解决方案?

我的公司正在开发一个在线 HR 和薪资应用程序,其中安全访问至关重要。我很清楚如何锁定大多数身份验证/授权过程,但“忘记密码”页面除外。

我最初的计划是要求用户输入电子邮件地址和对先前选择/输入的挑战问题的回复,并将临时密码邮寄到列出的电子邮件(假设电子邮件有效)。但是我在这里这里(都在 SO 上)读到挑战-响应方法是不安全的。

但是,如果我们只是通过电子邮件发送临时密码,真的那么不安全吗?我能想到的唯一更安全的选择是要求用户致电他们的客户服务代表,这会给我们的员工带来很大负担。

我错过了什么......有更好的方法吗?谢谢!

0 投票
3 回答
13135 浏览

firebird - 查找旧版 firebird/Interbase 数据库密码

我有一个客户有一个旧的不存在的应用程序;他与提出申请的公司有问题,他们不会透露他的数据库密码。他意识到他(当时)签署了一份合同,其中说他是在“租用”该应用程序,他们无权透露任何内容。这位客户发现他并不是唯一一个与该公司有同样问题的人。他是一名牙医,使用相同旧应用程序的其他牙医在尝试购买新软件并试图将他们的患者迁移到新系统时遇到了同样的问题。

无论哪种情况,他都想打开他的小火鸟数据库,这样我们至少可以将一些数据提取到我们的 SQL Server 中。我尝试使用默认的“masterkey”(实际上,由于 8 个字符的限制,“masterke”)无济于事。

现在我知道他可以合法化并试图强迫公司发布他的信息,但我想用捷径做。有人知道可以暴力破解/破解旧版 Firebird 密码的应用程序吗?

谢谢。

编辑:旧版软件是“STOMA-W”,我什至在互联网上都找不到。他们位于西班牙的阿斯图里亚斯。

0 投票
1 回答
10502 浏览

zend-framework - 如何在 Zend Framework 中生成用于重置密码的随机密码或临时 URL?

我有一个使用Zend_Auth_Adapter_DbTable. 我的身份验证控制器上有登录和注销操作。现在我想创建一个功能来重置忘记的密码,方法是自动生成密码,保存新密码,并向他们发送一封包含新生成密码的电子邮件。

这样做的最佳过程是什么?我应该如何生成新密码?Zend 框架有什么可以让这更容易吗?

我还听说过发送一封电子邮件,其中包含指向短期页面的链接,可让他们设置新密码。Zend 框架如何做到这一点?

0 投票
17 回答
13388 浏览

security - 最好的“忘记密码”方法是什么?

可能重复:
忘记密码:实现忘记密码功能的最佳方法是什么?

我正在编写一个社区网站。

我想建立一个“忘记密码”功能。

环顾不同的网站,我发现他们采用了以下三种选择之一:

  1. 向用户发送一封电子邮件,其中包含指向唯一隐藏 URL 的链接,该 URL允许他更改密码(Gmail 和 Amazon)

  2. 向用户发送一封带有随机生成的新密码的电子邮件(Wordpress)

  3. 向用户发送他当前的密码(www.teach12.com)

选项#3对用户来说似乎是最方便的,但由于我将密码保存为 MD5 哈希,我看不到选项#3 对我来说如何可用,因为MD5 是不可逆的。这似乎也是不安全的选项,因为这意味着网站必须在某处以明文形式保存密码,并且至少明文密码是通过不安全的电子邮件发送给用户的。或者我在这里错过了什么?

因此,如果我不能执行选项#1,选项#2似乎是最简单的编程,因为我只需要更改用户的密码并将其发送给他。尽管这有点不安全,因为您必须通过不安全的电子邮件传达实时密码。然而,这也可能被麻烦制造者滥用,通过输入随机电子邮件和不断更改各种用户的密码来纠缠用户。

选项#1似乎是最安全的,但需要一些额外的编程来处理过期的隐藏 URL 等,但它似乎是大型网站使用的。

您使用/编程这些不同的选项有什么经验?有什么我错过的选择吗?

0 投票
5 回答
5873 浏览

web-applications - 现代 Web 应用程序中密码检索的有效技术

我们一直在开发 web 应用程序,我们需要在其中实现密码检索的传统 web 应用程序功能。根据趋势,有一些方法,如..

  1. 将密码重置链接发送到用户的电子邮件。
  2. 向用户询问密码恢复的秘密问题。
  3. 重置现有密码并创建新密码并将其发送给用户。这也可能会强制用户在下次登录时更改密码。

我们是否有任何非传统技术来实现密码检索机制?您为此尝试了哪些其他方法?

谢谢。

0 投票
2 回答
7624 浏览

asp.net - 如何不使用 ASP.Net Membership Security Question and Answer 进行自定义密码恢复?

我不想拥有 ASP.Net Membership Provider 提供的安全问答功能,但我确实想启用丢失/忘记的密码页面。

此页面将是用户输入他/她的电子邮件地址的地方,如果用户已注册,则电子邮件将发送到该地址,以便他们通过发送到该注册电子邮件地址的链接重置密码

我创建了自定义表来跟踪此类请求、分配给请求的随机键以及请求的到期日期。然而,在编写代码以实际重置密码时,我意识到似乎没有一种方法可以在不需要使用安全问答位(我没有)的情况下执行 ResetPassword(email, newPassword) 之类的操作。

有没有办法通过内置的会员功能简单地重置用户的密码?

如果没有,我将如何完成这项工作?

提前感谢您提供的任何帮助。-日产

0 投票
10 回答
106391 浏览

security - Best way for a 'forgot password' implementation?

I'm looking for the best method to implement a "forgot password" feature.

I come out with 2 ideas:

  1. When user click on forgot password, the user is required to key in the username, email and maybe date of birth or last name. Then a mail with temporary password will be sent to the user email account. The user uses the temporary password to login and resets his password.

  2. Similar, but the email would contain a link to let the user reset his password.

Or anyone can suggest me a better and secure way? I'm also thinking to send the temporary password or link, force the user to reset the password within 24 hour, or else the temporary password or link will not be usable. How to do that?

0 投票
9 回答
869 浏览

security - 我应该通过 Twitter 上的直接消息向用户提供丢失的凭据吗?

通过 Twitter 上的直接消息而不是通过电子邮件向用户提供丢失的用户名或密码是否更好(更方便或更安全)?

0 投票
6 回答
1687 浏览

asp.net - 在 ASP.NET 中重置密码时的问题

我正在开发一个应用程序,我应该为忘记密码的用户设计一个页面并向他们发送新密码的电子邮件。我使用的是 ASP.NET Membership,密码格式应该是散列的。

我的问题是发送邮件失败,密码已更改,哇!没有工作可以完成。

你的解决方案是什么?