Discourse Connect が Discourse Approval 状態を受信

数日前にPHPでDiscourseをIdentity Providerとして実装しました。
現在、DiscourseサイトからのSSOペイロードの例がありますが、ユーザーが承認されているかどうかを確認する方法があるか疑問に思っています。PHPサイトのデータを表示できるのは承認済みのユーザーのみにしたいです。
この属性をチェックする方法はありますか、それとも承認されていないユーザーに対してDiscourse Connectはまったく機能しませんか?

ご協力ありがとうございます。

Discourseサイトで「ユーザーの承認が必要」設定を有効にしている場合、新しいユーザーはスタッフメンバーに承認されるまでDiscourseにログインできません。これにより、新しいユーザーはDiscourseで承認されるまでPHPサイトにもログインできなくなります。PHPサイトにDiscourse経由でのログインを許可するリンクが表示されている場合、未承認のユーザーがリンクをクリックするとDiscourseログインページに移動し、ログインを試みると次のような通知が表示されます。

これで質問に答えられていない場合はお知らせください。

参考までに、承認されたDiscourseユーザーがDiscourseConnect経由でサイトにログインしようとしたときに送信されるペイロードの例を以下に示します。

[admin] => false
[moderator] => false
[email] => connecttester@example.com
[external_id] => 379
[groups] => trust_level_3,trust_level_0,message_test,eurorack,trust_level_1,trust_level_2
[name] => Connect Tester
[nonce] => 690d8fb0853fd4c69bb89a5084d87f45
[return_sso_url] => http://wp-discourse.test/
[username] => connecttester

未承認のユーザーの場合、ユーザーはDiscourseログインページを通過できないため、データは送信されません。

「いいね!」 3

はい、まさにそのペイロードを取得しており、「ユーザーは承認される必要があります」が有効になっているため、機能するはずです。

ご協力ありがとうございました。

「いいね!」 1

迷ったときは、テストアカウントを作成してください!

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.