なぜか理解できませんが、Discourse ではユーザーは外部アカウント(たとえば、関連付けられた Discord アカウント)に接続したり、既に接続されているアカウントを管理したりすることができません。Discourse のコードは、ユーザーが関連付けられたアカウントを更新できるかどうかを判断するために、次のロジックを使用しているようです。
canUpdateAssociatedAccounts(
secondFactorEnabled,
canCheckEmails,
isAnonymous
) {
if (secondFactorEnabled || !canCheckEmails || isAnonymous) {
return false;
}
return findAll().length > 0;
なぜ secondFactorEnabled がここで考慮される変数なのですか?
ユーザーは奇妙な状況に陥っており、非常に混乱しています。ウェブサイトでアカウントを作成し、Discord サーバーへのアクセス権を得るために Discord アカウントとアカウントを関連付け、その後アカウントで 2 要素認証を有効にしました。その後、「関連付けられたアカウント」セクション全体がアカウントページから消えてしまいました!2 要素認証が有効になっている限り、関連付けられたアカウントを表示したり管理したりできなくなります。
別のユーザーは、アカウントを作成して 2 要素認証を有効にした後、関連付けられたアカウントを追加するための指示に従うことができませんでした。なぜなら、「関連付けられたアカウント」セクション全体がそもそも表示されなかったからです。
この問題のある他のユーザーと比較して、これら 2 人のユーザーに共通しているのは、両方とも 2 要素認証が有効になっていることだけです。
ユーザーに、フォーラムアカウントで 2 要素認証を有効にすることと、アカウントを Discord アカウントと関連付けることができることの両方のオプションを提供したいと思います。
これを Support カテゴリに分類しますが、これが実際に Bug かどうかはわかりません。いずれにしても、Discourse のコードを変更しない限り、回避策はないようです。