如果要设计一个用户注册系统只需要用户名和密码,除了设置问题和答案外还有什么更好的方式帮助用户找回密码。
最近龟软的 outlook 个人邮箱账户 SMTP 似乎被禁用了,这种情况出现好几次了,每次都过了半个月才发现发不了验证码,思来想去决定简化注册流程,毕竟除了恢复密码外,我根本不需要用户的邮箱。
想不到,但你这个发不了邮件的问题,或许可以找回密码时让用户使用注册时留的邮箱主动发验证码过来?
不打算继续用这些邮件服务了,经常还要盯着是不是服务异常,增加了工作量,太不值得了
用户账号也会忘记 不绑定邮箱麻烦
邮箱就是账户名,最简单的办法,不然你只能通过手机号了。
看样子不是很严谨的网站其实留邮箱更多是防 bot 暴力破解以及验证本人操作,不是取回密码的必要步骤这也简单,注册时让对方留下一句无需纸笔自己也绝不会忘记的话,需要一定长度,并大字注明这是唯一重置密码的方式,届时要一字不差输入,将这句话和用户名加盐 hash 保存用户不记这些东西,说明他也不在意丢失账密无法登入至于暴力破解,用其他方式拦截
用户账户忘记这个不在考虑范围内, 手机号就更不可能去做了,不是什么非常值钱的业务,而且我个人对手机号手收集非常敏感。
嗯嗯,差不多也是我想的,在变成严谨网站之前,我打算先最简化,并保证一定的安全。
问题和答案不是很可靠,用户只有注册的时候才会设置问答,设置好之后以后基本上就再也不用了,到需要恢复账号的时候可能已经忘掉了问答,除非你定期提示用户回答这些问题,如果回答错误就要求重新设置,但是这样对用户来说很麻烦。然后用户如果设置的答案过于简单很可能被攻击者猜到。可以提示让用户绑定多个不同服务商的邮箱,这样用户收不到的时候,可以自己在 UI 选择发送到其他邮箱,当然很多用户可能只绑定一个邮箱,但是绑多个邮箱的用户重试比率超过阈值的时候可以发告警,一定程度上可以减轻工作量。除了邮箱还有就是手机,但是其实很多地区的用户比较排斥绑定手机号,而且通过短信发验证码一样有送达率问题而且发短信比邮件贵多了。另一个途径是通过 WhatsApp API 给相应手机号发验证码,但不是所有人都用 WhatsApp 的。所以盯着邮件服务是否异常(包括人工盯以及设置自动告警)的工作量基本上是省不掉的。要最省力,那就是在注册的时候提示用户妥善保存用户名和密码,丢失后无法找回,只能重新注册新账号。
用 mailgun 之类的发信服务呗
感谢回复🙏
中国联通把我境外接收短信功能关闭了,我发现的时候超出了短信接收上限,不知道会不会恢复,我明早试试。另一个竞争对手,sendgrid 直接把我 ban 了,所以我感觉我得搞一个更加不依赖第三方的方式,一劳永逸。
面向程序员的网站可以考虑 GPG 签名或者 GitHub 的公钥验证找回密码
面向普通人就只能根据要求回忆账号近期操作、近期消费交易号来验证了,大厂也是这么做的
绑 oAuth 也行
没有秘密, 使用邮箱,手机验证码或者第三方登陆(微软,谷歌,苹果), 参考 supercell 的方案。
没有密码, 使用邮箱,手机验证码或者第三方登陆(微软,谷歌,苹果), 参考 supercell 的方案
Google 身份验证器 也叫 动态口令
直接简单点不要密码。 用户邮箱登录,就直接发送登录码到邮箱;或者干脆用公众号登录。发送登录码到公众号,就直接关联登录了。
github.com/spruceid/siwe
用通行密钥,密码都可以省了,恢复账号的话可以登录后
注册之后显示一段恢复代码让用户保存,恢复代码只显示一次,安全期间还可以加上 2fa 验证,第三方登录也是不错的选择
加个第三方登录不就好了么
可以参考网易通行证早期的做法:设置一个安全码。这个安全码是一个完全自定义的数字,由客户自行设置,记得应该是有最小长度的要求。这个安全码拥有该账户的最高权限,包括充值密码的操作。当然现在这种安全码可能会被秘钥或者助记词来代替。
要么第三方登录,要么注册时留联系方式,忘记密码提工单走人工验证。
不知道大家有没有这样的感觉, 刚入行的时候比较喜欢读一些新书, 尤其是讲时髦技术的书. 摸爬滚打两三年之后, 大概率会感觉到有个瓶颈期, 这时候读书就比较偏向于选择一些分享经验…
如题,请诸位大佬指教,谢谢。 emm 飞书 vivo 有个互传挺好用的,有客户端也可以用网页 Landrop, Localsend我觉得 Landrop 更好用因为 Lo…
需求: 不怎么玩游戏,只玩 地平线 ,所以显卡无所谓 搞开发 还差个电源和显卡,显卡目前甚至可以不需要。 目前挑的刀把机 预算 7-8k ,没准确的预算 i5 13600K 吹…