一些理论想法可能会根据您可以获得的信息而起作用
离线到他们已知的帐单地址
听起来这是一项商业服务。对于某些用户,如果他们使用个人信用卡等,您可能会记录他们的个人账单信息 - 您可以通过邮件向这些用户发送离线重置代码(例如银行向您发送 ATM 密码时)。这会很慢,但希望没有人窥探用户的邮件。
使用卡安全码重新验证存档的信用卡
如果使用的是个人CC,我有一个理论方案我会在下面分享。我在考虑地址验证系统,但我认为一般来说不需要卡安全码(例如,CVV)。考虑这个过程:
要求用户使用他们存档的信用卡在您的网站上进行小额购买 - 可能是 0.50 美元(您可以在验证后立即撤销此费用或将其称为特殊重置费用)
然后使用记录在案的相同账单信息、信用卡号进行付款。虽然对于给定的个人,账单信息可能很容易研究,但信用卡号应该很难从任何地方提取出来,而卡安全码则更难。
这可能是相当自动的,并根据您存档的信息进行验证。
链接到其他身份
假设您的服务允许用户在他们的帐户中输入社交网络配置文件。由于这是一个商业工具,你可能会无缘无故地向他们询问他们的 LinkedIn 个人资料,或者可能出于实际目的在他们的时间线上发布他们的成就。也许您有一个设置,您可以自动推特用户完成的课程等。由于用户将她的社交媒体信息输入到她的个人资料中,您可以要求她通过社交媒体服务进行验证。
我记得 Stack Exchange 在某些时候这样做是为了合并我的两个个人资料,您将某种类型的消息放入两个帐户的个人资料中,然后联系管理员进行合并。在您的情况下,您可以只向用户在她的个人资料中列出的帐户发送私人消息,因为她不太可能在您网站上的个人资料中添加一些随机人的帐户。
如果您想承担更大的风险,您可以要求在丢失旧电子邮件之前从未输入过社交媒体资料的用户向您提供一些社交媒体资料,并进行一些尽职调查以查看这些资料是否合法(真实来自该人曾经工作过的同一家公司的朋友/追随者)。然后,您可以要求至少有两个好的个人资料,要求他们在网站或个人资料中进行一些更新,以证明他们拥有这些网站,或者在两个平台上直接/私信他们以确保他们拥有这些网站。
概括
最后,我认为他们不只是创建新个人资料的原因是因为他们正在为服务付费,并且他们想要他们已经付费的服务。正如他们所说,跟着钱走……但是,如果他们使用他们不再可以使用的公司卡,这将不起作用。也许他们有发票或信用卡对帐单的旧副本,在这种情况下他们可以发送给您,工资单/报销之外的其他人不太可能拥有这些类型的文件。我会说,如果你不能对账单信息做点什么,那么也许可以试试我上面描述的社交媒体路线。
我不认为您将能够轻松地创建一个安全且强大的平台来自动执行此操作,但我也想您一天不会有数百个这样的案例。我会尝试从最可靠的开始,然后逐个研究不太可靠或更耗时的。
对其他策略的思考
看起来您现在正在使用的路径以及在许多其他答案中建议的路径依赖于在注册时获取额外的身份信息(理想情况下),然后在用户不再拥有她的电子邮件帐户时使用该信息来验证用户. 问题是您可能要收集的任何信息都可以被研究或找到。如果您开始询问大量与您的服务无关的信息,您可能会遇到用户体验问题(为什么有这么多字段,为什么要侵犯我的隐私等)。如果您要求他们验证大量信息,则会增加难度,但这听起来并不符合您对合理保证的要求。同样的问题也适用于安全问题。
其他一些答案依赖于用户通过之前在网站上采取的行动来验证他们的身份。根据您的服务,这可能是可能的,但在许多情况下,这些操作可能难以记住,太多的活动可能是公开的,或者可能足够通用,以至于任何其他用户都可以冒充该用户。根据您的具体情况,这条路径有一些潜力。
其他建议包括询问用户将随身携带的东西,例如辅助电子邮件或手机(假设他们也没有给您公司手机号码)。如果他们正在使用他们的公司电子邮件,他们可能正在使用他们的公司计算机,并且如果他们不再能够访问他们的公司电子邮件,那么任何其他类型的令牌、哈希、文件等都可能是一个有争议的问题。
编辑:
我看到您的一些问题与所有用户手机上的 SMS 和可用性有关。假设您有他们的个人电话而不是他们的工作电话,则有非基于 SMS 的解决方案使用VRU/IVR等通过语音提供代码。如果您有一个有效的、可访问的电话号码,那么您应该能够通过 SMS 或语音提示系统联系该号码。至少,在低音量时,您可以在发出请求时让人工呼叫文件中的号码。希望每天没有大量用户继续前进并忘记密码。