gna*_*avi 11 security passwords login forgot-password
我公司的一个小组正在为我们的应用程序实现单点登录REST API.此身份验证服务具有密码重置功能.应用程序将用户名发送到重置功能.如果该用户名与电子邮件地址相关联,则会使用临时密码将电子邮件发送到该地址.
另一种方法似乎是通过电子邮件发送安全的临时链接的站点,该链接为用户提供输入新密码的页面.此页面仅存在很短的时间.
我知道电子邮件不是安全协议,因此人们可以嗅探流量并恢复临时密码或临时链接.
是否有任何重要的安全理由偏好一种方法而不是另一种方法?还有另一种更安全的方法吗?
在这两种情况下,私人信息(临时密码或重置链接)都通过同一媒体传输.从这个角度来看,安全性没有区别.但是,重置链接有几个优点:强制用户选择新密码.一旦他这样做,该链接是无效的,不能被滥用.相反,临时密码往往不是您想要的临时密码.即使您强制用户在下次登录时选择新密码,他也可能再次进入临时密码.
此外,您可以记录使用重置链接的人的IP,因此必要时至少要有一些东西移交给当局.
是否有任何重要的安全理由偏好一种方法而不是另一种方法?
是.如果您使用临时密码路由,那么任何人都可以通过不断点击重置链接并输入该用户的电子邮件地址来惹恼用户的垃圾.如果您使用密码重置链接,用户可以忽略它们并删除电子邮件.