如何安全地避免已经亲自注册的人重复注册?

How to avoid duplicated registration securely by people who already registered personally?

我们获得了过去 30 年的姓名、出生日期、地址的个人登记,并且我们有一个在线系统。我们希望避免重复注册,因为从商业角度来看,这些人的历史非常重要。目前通过在线注册提供姓名和出生日期足以让系统找到个人注册帐户并让用户设置用户名、phone 号码、电子邮件地址和密码。从安全角度来看,这是一个大问题,因为每个人都可以通过知道姓名和出生日期来获取这些帐户。有没有更好的解决方案,如何让这个系统更安全?

我们称这些帐户为 "online" 和 "offline"。我提出了以下系统:

  • 在线和离线帐户是不同的实体,因为在线帐户是通过用户名和密码来识别的,而离线帐户目前是通过姓名和出生日期来识别的。
  • 在线和离线帐户之间没有 1:1 关系,因为名称可以更改。所以它们之间存在 1:n 关系。
  • 客户可以通过启动激活过程将离线帐户附加到在线帐户。不绑定账号,他们将不会根据离线历史获得折扣。
  • 如果客户想亲自做任何事情,他们以后将需要一个在线帐户。如果他们没有,则必须请管理员创建一个。通过亲自创建这样的在线帐户,管理员应该询问他们是否有任何离线帐户,以便可以开始激活过程。
  • 在激活过程中,客户必须将在线账户的标识和离线账户的标识提供给管理员。我们可以使用额外的验证,例如询问离线历史等......系统应该验证这些账户是否真的兼容,例如。通过比较出生日期。
  • 长时间 运行 我们必须摆脱离线帐户并将其历史记录与在线帐户合并。所以我们需要一个截止日期,例如几年,在那个截止日期之后,我们应该删除所有未合并的离线帐户并简化系统。