根据您开始的另一个主题,我假设您正在使用 OAuth2 进行 SSO。
如果您允许用户直接在 Discourse 上使用用户名/密码注册账户,然后在稍后启用 OAuth2,那么您需要关注的唯一问题是,当用户通过 OAuth2 登录时,Discourse 是否能匹配到那些使用用户名/密码创建的账户。
如果 OAuth2 提供商提供的电子邮件地址与用户首次在该网站注册时提供的电子邮件地址匹配,Discourse 就可以将使用用户名/密码注册的账户与 OAuth2 登录进行匹配。要实现这一点最简单的方法是启用 Discourse 上的 oauth2 email verified 站点设置。请注意,只有当 OAuth2 提供商在用户首次设置账户时实际验证电子邮件地址时,才应执行此操作。
有时,用户在 Discourse 上注册的电子邮件地址可能与他们在身份验证提供商上使用的地址不同。这将导致用户拥有两个 Discourse 账户。这个问题可以通过站点管理员将使用用户名/密码创建的账户合并到用户通过 OAuth2 登录时创建的账户来逐个用户地解决。