DiscourseConnect SSOエラー

お疲れ様です、Brains Trust の皆様!

SSO に問題が発生しています。

以前は正常にログインできていた既存ユーザーが、フォーラムにアクセスしようとした際に以下のメッセージが表示されるようになりました。

そのユーザーの SSO 詳細は以下の通りです。

私はそのユーザーを偽装(Impersonate)することはできますが、WordPress 経由でのログインはできません。

エラーログには以下のエラーが記録されています。

原因が全くわかりません。素晴らしい頭脳をお持ちの皆様にお願いいたします!

@jakelunniss さん、こんにちは。

Discourse のログに記録されたエラーは、別のユーザーに関連しているようです(name 属性に注目してください)。

ログインできないユーザーについては、SSO ペイロード内で require_activationtrue に設定されていることが原因ではないかと推測されます。これにより、既存ユーザーの検索ではなく、新規ユーザーの作成が試みられてしまい、アカウントが既に存在するためエラーが発生していると考えられます。

既存ユーザーに対して require_activationtrue になる理由はいくつか考えられますが、まずはそのユーザーの WordPress プロフィールページに移動し、このチェックボックスにチェックを入れて「プロフィールを更新」ボタンをクリックしてください。

Screen Shot 2021-08-06 at 10.27.53 AM

その後、再度ログインを試みるよう伝えてください。

(ここでは、WordPress に discourse_email_verification フィルターを使用するカスタムコードが存在しないものと仮定しています)

追伸:データプライバシーなどの観点から、スクリーンショット内のメールアドレスを伏字にすることをお勧めします。

@angus さん、こんにちは。

返信ありがとうございます!

まず、メールアドレスについてですが、Johnathan は私の友人です。彼のメールアドレスはウェブサイトで公開されており、プライバシーについては全く気にしていません。そうでなければ、伏せていたはずです。

彼のプロフィールで確認済みのメールアドレスを確認したところ、すでにチェックが入っていました。

そこで、以下の設定のチェックを外しました:

image

これで問題が解決したようです。

いいえ、discourse_email_verification フィルターを使用するカスタムコードはありません。

本日、別のユーザーでも同様の問題が発生しました。Discourse 上でユーザーがメールアドレスを変更できないようにしたいと考えているため、引き続き根本原因を突き止めたいと思います。

再度、ありがとうございます!

彼は最近メールアドレスを変更しましたか、それともそのエラーのログスクリーンショットは別のユーザーのものですか?