集成到自定义认证系统中,邮箱不是唯一的情况?

是的,当然是这样,这也是我想要达到的目的。我正在寻找一种完全不允许使用电子邮件登录的解决方案,只保留用户名登录作为唯一的方法。我愿意通过完全提供来自 OAuth 服务器的虚假电子邮件来基本上完全破坏电子邮件支持(例如,没有电子邮件通知)。但这会产生摩擦,因为如果仍然可以使用电子邮件登录,用户会尝试这样做但会失败。

这实际上将迫使我们为每个用户跟踪 2 个不同的电子邮件地址,这也不理想,而且如 @supermathie 所提到的,并非所有提供商都能保证正常工作,并且仍然会产生摩擦,因为我们现在必须告诉用户他们必须记住的这个论坛特定的电子邮件地址。

是的,这在技术上是可行的。但出于显而易见的原因,这并不是一个真正的解决方案,因为它会阻止所有其他人加入论坛。

出于技术原因,我们无法做到这一点。最明显的原因是我们已经有用户拥有与其他帐户相同的电子邮件地址。但更重要的是我们根本无法做到这一点。我们希望将 Discourse 集成的项目是 Pretendo Network,这是一个针对任天堂网络的服务器仿真项目。任天堂允许其帐户系统重用电子邮件地址,因此为了准确地模拟服务器,我们也必须这样做。强制使用唯一电子邮件地址不在我们的考虑范围内。

我团队中的有人建议我们运行自己的 SMTP 服务器,该服务器负责将 Discourse 的虚假电子邮件映射到我们用户的实际电子邮件,并将从 Discourse 发送的电子邮件转发到那里。这会奏效,但显然会给我们带来更高的技术成本,并且仍然无法解决禁用电子邮件登录以及我们案例中提到的摩擦问题。

看来我们可能不得不分叉 Discourse 或使用另一个论坛解决方案来实现我们的需求。