将用户从机构邮箱域名迁移的最佳实践:避免重复/冒充账户

我运营着一个独立的 Discourse 社区 https://physicswithethan.discourse.diy,该社区此前允许使用机构邮箱地址和外部单点登录(SSO)。

我现在希望转向使用个人邮箱地址的普通本地 Discourse 账户,并避免在注册新用户时依赖机构 SSO 或机构邮箱域名。

我试图安全处理的问题是账户连续性和冒充风险:

  • 许多现有用户的个人邮箱是其主邮箱;
  • 我希望新用户改用个人邮箱地址;
  • 我要防止有人使用他人的姓名或机构邮箱地址注册账户;
  • 我还想避免在不明确证明同一人控制相关账户/邮箱的情况下进行不安全或手动的账户合并。

这里推荐的 Discourse 原生方法是什么?

例如,最佳模式是否是:

  1. 重新启用本地登录;
  2. 禁用外部 SSO 提供商;
  3. 将机构域名添加到新注册用户的屏蔽邮箱域名列表中;
  4. 添加站点通知,要求现有用户将主邮箱更新为个人邮箱;
  5. 对可疑的新账户使用手动审批/审核;
  6. 仅在用户验证了对两个账户或邮箱的控制权时才合并账户?

我特别希望避免以下情况:用户可以触发向他人机构邮箱发送邮件,或以他人名义创建误导性账户。

对于这类过渡,人们是否推荐现有的设置或工作流程?

您的意思是,您与某特定机构(例如 whatever.edu)拥有单点登录(SSO)集成,并希望用户停止使用该邮箱地址吗?

在任何情况下,都无法向机构账户触发邮件(邮件验证请求除外)。

防止他人冒充某人的最佳方式,难道不是要求他们使用自己的机构邮箱地址吗?任何人都可以创建 albert.einstein123@gmail.com 并冒充该人,对此我们毫无办法。

是的,这正是我试图处理的张力。

从技术上讲,我同意机构邮箱地址比个人邮箱地址能提供更强的身份保证。我逐渐放弃机构邮箱/SSO(单点登录)的原因,并不是因为个人邮箱是更好的身份证明,而是我希望社区保持明确的独立性,不依赖任何机构的身份系统或邮箱域名来维持持续访问。

自我的首帖以来,我已在网站本身更清晰地说明了当前的过渡状态:

  • 欢迎页/登录页现在声明“Physics with Ethan”是独立的,不与任何大学、学校或部门有关联或获得其背书;
  • 页面还解释了目前注册登录使用微软工作或学校账户验证进行新用户引导;
  • 现有用户现在可以在登录后通过“个人资料 → 偏好设置 → 邮箱”添加个人邮箱地址;
  • 我还添加了措辞,要求用户不要使用他人的姓名、邮箱地址或身份进行注册。

因此,我认为当前的立场是一种过渡状态:

  • 微软工作或学校验证在引导期间对于降低冒充风险仍然有用;
  • 但我希望现有用户添加个人邮箱地址;
  • 并且我希望避免让机构邮箱/SSO成为社区的长期依赖。

我仍在尝试解答的实际 Discourse 问题是:

对于一个希望从机构邮箱/SSO 转向本地账户和个人邮箱地址的社区,最安全的模式是保持过渡过程为手动/管理员审核,而不是尝试自动合并账户吗?

例如:

  1. 允许现有用户在登录状态下添加个人邮箱;
  2. 在欢迎页上清楚说明当前的引导方法;
  3. 劝阻误导性注册/冒充行为;
  4. 避免自动合并账户;
  5. 仅在确有明确证据表明同一人控制相关账户/邮箱时才合并账户。

这听起来像是正确的 Discourse 原生方向吗?