チームの皆様、こんにちは。
当組織で Discourse を利用しており、Azure AD を使用した SSO(シングルサインオン)の有効化が必要です。Azure AD を用いて SSO を有効化する方法に関するガイドはございますでしょうか?
また、もう一点ご質問があります。通常、Discourse ではユーザー名とパスワードによる認証を使用する場合、ユーザーはフォーラム上で自ら登録してアカウントを作成できますが、Azure AD SSO の場合、ログイン時にプロファイルが自動的に作成され、特定の Azure AD グループに基づいてグループにマッピングされる仕組みはどうなっているのでしょうか?
Azure AD SSO を使用してフォーラムにログインする際に、ユーザーアカウントを自動的に作成し、Azure AD のグループ名に基づいてユーザーを特定のグループに自動的にマッピングする方法はございますでしょうか?
よろしくお願いいたします。
Sundaram
david
(David Taylor)
2021 年 8 月 9 日午前 9:25
3
OpenID Connect プラグインで成功した例が多数あります。Azure AD については、以下の最初の投稿の下部に短いセクションがあります。
概要
Discourse OpenID Connect を使用すると、OpenID Connect プロバイダーを Discourse の認証プロバイダーとして利用できます。
インストールガイド
このプラグインは Discourse コアにバンドルされています。別途プラグインをインストールする必要はありません。
機能
このプラグインは、仕様 の最小限の実装を提供することを目指しています。具体的には、「Authorization Code Flow」をサポートしています。開始するには、プラグインのインストール手順 に従うか、ホスティングプロバイダーに連絡してください。
oauth2-basic プラグインを使用すると、一部の OpenID Connect プロバイダーへの接続が可能です(OpenID Connect は OAuth2 に基づいています)。ただし、このプラグインははるかに少ない手動設定で動作し、JSON API が利用できない場合でも JWT の「ID Token」を利用できます。
設定…
デフォルトでは、Discourse で「ログイン」をクリックすると Azure にリダイレクトされます。Discourse に戻ると、サインアップフォーム(パスワードフィールドを除く通常のサインアップフォームと同じ)が表示されます。サインアップの動作を制御するために、さまざまなサイト設定を使用できます。
現時点では、グループ同期はサポートされていません。Discourse API を使用した統合を構築することで、何らかの解決策を実現できるかもしれません。
ご返信いただき、ありがとうございます。とても助かりました。
david
(David Taylor)
2021 年 8 月 10 日午後 12:29
6
グループ同期についてですか?現時点では Azure や OpenID Connect に関する具体的な計画はありません。ただし、将来 Azure サポートを追加する可能性を秘めた汎用フレームワークの開発を進めています。技術詳細は以下をご覧ください:
@david Continuing the discussion from
As you probably can guess, I’m also keen to see a stable solution to this problem, which is not specific to the openid-connect plugin. Let’s see if we can figure out a way forward
To pick up on the point you’ve raised.
How do you decide which groups to add and remove the user from? And how does that affect manually adding/removing users from groups in Discourse itself?
a user authenticates via OIDC with groups ['group1', 'group2']
In the discourse UI…