このガイドでは、外部認証プロバイダーを有効にした際に、Discourse でユーザーアカウントを自動プロビジョニングする方法を説明します。これにより、ユーザーはサインアップページを表示されることなく、自動的にアカウントが作成されます。
必要なユーザーレベル:管理者
外部認証によるユーザーアカウントの自動プロビジョニング
Discourse を DiscourseConnect、OpenID Connect プラグイン、OAuth2 Basic プラグイン、SAML、またはその他の認証プロバイダーに接続すると、Discourse は初回ログイン時にユーザーアカウントを作成します。デフォルトでは、プロバイダーがすべての必要な詳細(メール、ユーザー名、名前)を提供していても、アカウントを作成する前にサインアップページが表示されます。
自動プロビジョニングはこの追加ステップを省略します。適切な設定を有効にすると、Discourse はバックグラウンドで静かにアカウントを作成し、ユーザーを直接ログインさせ、シームレスな体験を提供します。
自動プロビジョニングの有効化
サインアップステップをスキップするには、auth skip create confirm サイト設定を有効にする必要があります。この設定は、[管理 > すべてのサイト設定 > ログインページ] にあります。
オプション:オーバーライド設定の有効化
これらの設定は、Discourse にアイデンティティプロバイダーが提供する値を信頼し、ユーザーに確認を求めずに直接使用するように指示します。[管理 > すべてのサイト設定 > ログインページ] に移動し、以下を確認してください。
| 設定 | 説明 |
|---|---|
auth overrides username |
ログイン時にプロバイダーからのユーザー名を直接使用し、ユーザーがローカルで変更できないようにします。すべての認証プロバイダーに適用されます。 |
auth overrides email |
ログイン時にプロバイダーからのメールを直接使用し、ユーザーがローカルで変更できないようにします。すべての認証プロバイダーに適用されます。 |
auth overrides name |
ログイン時にプロバイダーからのフルネームを直接使用し、ユーザーがローカルで変更できないようにします。すべての認証プロバイダーに適用されます。 |
auth overrides avatar |
ログイン時にプロバイダーからのアバターを直接使用し、ユーザーがローカルで変更できないようにします。すべての認証プロバイダーに適用されます。 |
OAuth2 Basic、OpenID Connect、SAML プラグインには、それぞれ固有のオーバーライド設定(
oauth2 overrides email、openid connect overrides email、saml sync email)もあります。これらはグローバルなauth overrides email設定と同じように機能しますが、それぞれのプロバイダーにのみ適用されます。ほとんどの設定では、上記のグローバル設定で十分です。
よくある質問
これらの設定はすべての認証プラグインに適用されるのでしょうか、それとも DiscourseConnect のみに適用されるのでしょうか?
auth skip create confirm および auth overrides * 設定は、DiscourseConnect、OpenID Connect、OAuth2 Basic、SAML、および Discourse の認証フレームワークに基づいて構築された他のすべてのプラグインを含む、すべての外部認証プロバイダーに適用されます。
ログイン前にユーザーのアカウントを事前に作成することはできますか?
はい、DiscourseConnect を使用している場合のみ可能です。Sync DiscourseConnect user data with the sync_sso route に記載されている sync_sso API ルートを使用してください。
DiscourseConnect と OAuth2/OIDC プラグインの違いは何ですか?
DiscourseConnect は Discourse 独自の SSO プロトコルです。これにより、外部サイトはグループメンバーシップのプッシュ、フィールドのオーバーライド、API によるアカウントの事前作成など、Discourse アカウントを完全に制御できます。OAuth2 および OpenID Connect プラグインは業界標準のプロトコルを使用しており、最小限の設定でサードパーティのアイデンティティプロバイダーに接続しやすくなっています。