我的公司正在开发一个在线 HR 和薪资应用程序,其中安全访问至关重要。我很清楚如何锁定大多数身份验证/授权过程,但“忘记密码”页面除外。
我最初的计划是要求用户输入电子邮件地址和对先前选择/输入的挑战问题的回复,并将临时密码邮寄到列出的电子邮件(假设电子邮件有效)。但是我在这里和这里(都在 SO 上)读到挑战-响应方法是不安全的。
但是,如果我们只是通过电子邮件发送临时密码,真的那么不安全吗?我能想到的唯一更安全的选择是要求用户致电他们的客户服务代表,这会给我们的员工带来很大负担。
我错过了什么......有更好的方法吗?谢谢!