「部分的な」SSOは可能ですか?

私は開発者ではないため、自分の質問の答えを見つけるために何を検索すればよいのかもわかりません。現在、Discourse を試用しており、ユーザーのログイン方法について非常に悩んでいます。

試用期間の初めは、試用期間終了後に SSO を採用するつもりだと確信していましたが、今はそう確信できなくなっています。SSO を有効にすると、招待機能など、Discourse の素晴らしい機能の一部を失うように思えます。私の場合、その利点がそれを補うだけの価値があるかどうかはわかりません。

フォーラムが Discourse 内蔵のアカウントと、自分のサイトのアカウントの両方を使用することは可能でしょうか?「または Facebook/Google/Apple でログイン」というオプションを設定できるのと同じようにです。

ご存知の通り、ユーザーがログインまたはアカウント作成を試みると、メールアドレスとパスワードの入力欄が表示されますが、その右側に Facebook や Google などでログインするオプションが表示されます。私のサイトのアカウントも、その右側のオプションの一つとして設定することはできるでしょうか?

つまり、ユーザーがメインサイトのログインのみを使用し、フォーラム用に新しいアカウントを作成したくない場合でも、それを可能にできるが、必須にはしない、という形です。

これは可能でしょうか?また、これは推奨される方法でしょうか?つまり、この方法を採用すべきではない理由はありますか?よろしくお願いします!

「SSO」の定義によります:

  • もし Setup DiscourseConnect - Official Single-Sign-On for Discourse (sso)DiscourseConnect(公式シングルサインオン)のことを指しているなら、他のログインオプションと同時に利用することはできません。

  • OAuth2、OpenID Connect、または当社の他の認証プラグインのことを指しているなら、それらは互いに併用可能であり、メールアドレスとパスワードでのログインとも併用できます。

その点については良いニュースがあります。DiscourseConnect への招待機能サポートを最近追加しました。

また、他のログイン方法については以下の通りです:

これらの変更は、Discourse の最新バージョンで既に反映されています。

「いいね!」 4

サーバーで OAuth2 を実装することで、Google や GitHub、その他のサービスのように機能させることができます(あなたが開発者でない場合は、誰かにその作業を依頼してください)。

「いいね!」 2

ありがとうございます!それに関するドキュメントへのリンクをいただけますか?

以下の 2 つのプラグインは、こちらで見つけることができます:

「いいね!」 5

SSO と招待機能の互換性が実現されることを楽しみにしておりましたが、私の環境では動作していないようです。

メインサイトは WordPress で、2 つのアプリケーションを連携させるために WP Discourse プラグインを使用しています。また、WordPress 側でメール認証を行う登録フォームがあり、登録時に Discourse が重複した確認メールを送信しないよう、カスタムコードを実装しています。さらに、コミュニティへのアクセスを承認制にするため、Discourse 側で must_approve_users を有効にしています。

以下の手順を踏んだのですが、ユーザーの承認は最終的に完了しませんでした。以前と同じ状況です。

  1. メールアドレスでユーザーを招待
  2. ユーザーが招待メールを開き、リンクをクリック
  3. ユーザーは Discourse のログイン済みではないページにリダイレクトされ、ウェルカムメッセージと「続ける」ボタン(CTA)が表示される
  4. 「続ける」ボタンをクリックすると、WordPress のログインページに移動
  5. ユーザーは WordPress に未登録のため、新しいアカウントを作成する必要がありました。これは WordPress が Discourse から招待されたことを認識していないため、妥当な対応だと考えています。
  6. 登録後、WordPress から確認メールが届きます。そのメールをクリックすると、WordPress のログインページにリダイレクトされます。
  7. WordPress にログイン後、コミュニティにアクセスしようとしましたが、できませんでした。
  8. 管理者アカウントでユーザーのステータスを確認したところ、予想通り「承認待ち」でした。これは招待を送る前と同じ状況です。

何が不足しているのでしょうか?他に考慮すべきフローはありますか?WordPress に登録済みのユーザーのみを招待できるのでしょうか?ご助言をお願いいたします。

Discourse バージョン: 2.8.0.beta1