> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tryprofound.com/llms.txt
> Use this file to discover all available pages before exploring further.

# カスタム OIDC 接続で SSO を設定する

> 独自の OpenID Connect 認可サーバーを Profound SSO に接続します

カスタム OpenID Connect(OIDC)接続を通じて、Profound でシングルサインオン(SSO)を設定します。ID プロバイダー(IdP)が SSO 設定ポータルのリストにない場合や、ユーザーが IdP のデフォルトの認可サーバーではなく、自社で運用する認可サーバーを通じて認証する場合は、このガイドを使用してください。

<Info>
  **概要**

  * SSO の設定は **セルフサービス** です。誰でも設定を完了し、その値を IT チームに渡すことができます。
  * SSO の設定は設定ポータルで行います。ポータルは **Profound の外部で開きます**。
  * **いつでも設定を中断して再開できます**。入力または生成した値は保持され、このガイドの最後のステップで SSO を有効にするまで、チームは通常どおりサインインを続けられます。
  * **Profound は、リダイレクト URI などの固定の SSO 接続値を公開していません**。また、これらをリクエストする必要もありません。[設定手順](#setup-steps)に従って進めると、ポータルが組織用にこれらの値を生成します。
</Info>

## 始める前に

次のものが必要です。

* Profound 組織での [Admin ロール](/ja-jp/platform-config/people/roles-and-permissions)
* IdP と、ユーザーがサインインに使用する OIDC 認可サーバーへの管理者アクセス
* SSO を有効にするドメイン
* ドメインの所有権を確認するための DNS レコードへのアクセス
* テストサインインを実行するための、SSO ドメイン上の IdP アカウント。このアカウントは [ステップ 4](#step-4) で Profound アプリケーションに割り当てます

## 設定手順

<Steps>
  <Step title="SSO 設定ポータルを開く" id="step-1">
    1. Profound で、画面左上の組織名を選択し、**Settings** を選択します。
    2. 左側のナビゲーションサイドバーで、**Organization** の下にある **Enterprise Setup** を選択します。**Single Sign-On** カードに、現在の SSO ステータスと確認済みのドメインが表示されます。
    3. **Configure SSO** を選択して設定ポータルを開きます。

           <img src="https://mintcdn.com/profound-37face47/KA2VQvbNybfiIidf/images/enterprise-connections/sso-configure.png?fit=max&auto=format&n=KA2VQvbNybfiIidf&q=85&s=7ffcd1116e918e85a10ca092d912ffc3" alt="Configure SSO ボタンがハイライトされた Single Sign-On カードを表示する Enterprise Setup ページのスクリーンショット" width="1760" height="1084" data-path="images/enterprise-connections/sso-configure.png" />
  </Step>

  <Step title="ドメインを確認する" id="step-2">
    ポータルでドメイン確認のステップが表示されます。このステップとそのトラブルシューティングについては、[ドメイン確認ガイド](/ja-jp/platform-config/authentication/sso-domain-verification)で詳しく説明しています。

    ドメインが確認されると、SSO を有効にするまで **Single Sign-On** カードのステータスは **In progress** と表示されます。
  </Step>

  <Step title="カスタム OIDC オプションを選択する" id="step-3">
    ID プロバイダーのステップで、名前付きのプロバイダーではなくカスタム OIDC オプションを選択します。

    ポータルが **Custom OIDC** フローに切り替わります。このフローには独自のステップがあります。

    1. Provide an Identity Provider Name
    2. Create an Application
    3. Add Claims
    4. Provide your OIDC Configuration
    5. Test Single Sign-On

    ID プロバイダーの名前を入力して続行します。
  </Step>

  <Step title="認可サーバーでアプリケーションを作成する" id="step-4">
    ポータルに、ユーザーのサインイン後に認可サーバーがユーザーを移動させる **Login redirect URI** が表示されます。この値は接続ごとに生成され、Profound の他の場所には表示されません。ポータルからコピーしてください。

    <img src="https://mintcdn.com/profound-37face47/aTf2hmI2OEek9so_/images/enterprise-connections/sso-custom-oidc-redirect-uri.png?fit=max&auto=format&n=aTf2hmI2OEek9so_&q=85&s=30505cc437644bef37aed712d227a0fe" alt="設定ポータルの Custom OIDC フローのステップ 2「Create an Application」。アプリケーションの要件が一覧表示され、Login redirect URI フィールドとその Copy ボタンがハイライトされている" width="1964" height="898" data-path="images/enterprise-connections/sso-custom-oidc-redirect-uri.png" />

    認可サーバーで、次の条件を満たす Profound 用の Web アプリケーションを作成します。

    * OIDC のサインイン方式を使用する。
    * 認可コードグラントを使用する。
    * クライアント ID とクライアントシークレットで認証する。
    * Profound の **Login redirect URI** をサインインリダイレクト URI として設定する。`localhost` アドレスなど、IdP が事前入力したプレースホルダーは置き換えてください。
    * テストに使用する予定のアカウントを含め、Profound にサインインするユーザーまたはグループに割り当てる。

    アプリケーションのクライアント ID とクライアントシークレットは [ステップ 6](#step-6) で使用するため控えておいてください。クライアントシークレットの代わりに private key JWT を使用するようにアプリケーションを設定する場合は、ポータルの指示に従ってキーを登録し、[ステップ 6](#step-6) でその認証方式を選択してください。

    設定ポータルに戻り、**Continue** を選択します。

    <Note>
      カスタム認可サーバーに独自のアクセスポリシーがある場合は、Profound 用に作成したアプリケーションがトークンをリクエストできるよう、いずれかのポリシーで許可されていることを確認してください。
    </Note>
  </Step>

  <Step title="ID トークンにクレームを追加する" id="step-5">
    ポータルには、認可サーバーが発行する ID トークンから Profound が読み取るクレームが一覧表示されます。多くのプロバイダーでは、必要なクレームがデフォルトで含まれています。それ以外のプロバイダーでは、認可サーバーの設定で ID トークンにクレームを追加する必要があります。

    <img src="https://mintcdn.com/profound-37face47/aTf2hmI2OEek9so_/images/enterprise-connections/sso-custom-oidc-claims.png?fit=max&auto=format&n=aTf2hmI2OEek9so_&q=85&s=0c741c5de992a575ece1cac38a83fbd5" alt="設定ポータルの Custom OIDC フローのステップ 3「Add Claims」。ID トークンに追加する必要のあるクレーム(sub、email、given_name、family_name)が一覧表示されている" width="2000" height="756" data-path="images/enterprise-connections/sso-custom-oidc-claims.png" />

    | クレーム | 必須 | 説明 |
    | - | - | - |
    | `sub` | はい | IdP におけるユーザーの不変かつ一意の ID |
    | `email` | はい | ユーザーのメールアドレス。Profound はこれを確認済みのドメインと照合します |
    | `given_name` | はい | ユーザーの名 |
    | `family_name` | はい | ユーザーの姓 |

    クレームを追加し、**Continue** を選択します。

    認可サーバーがこれらのクレームを ID トークンではなく [userinfo エンドポイント](https://openid.net/specs/openid-connect-core-1_0.html#UserInfo)からのみ返す場合は、ID トークンに追加せずに続行し、[ステップ 6](#step-6) で **Use userinfo endpoint** をオンにしてください。
  </Step>

  <Step title="OIDC 設定を入力する" id="step-6">
    認可サーバーの値を入力します。

    * **Discovery endpoint**: 認可サーバーの OIDC ディスカバリードキュメントの URL。例: `your-company.okta.com/.../.well-known/openid-configuration`。
    * **Client ID** と **Client secret**: [ステップ 4](#step-4) で作成したアプリケーションの認証情報。

          <img src="https://mintcdn.com/profound-37face47/aTf2hmI2OEek9so_/images/enterprise-connections/sso-custom-oidc-configuration.png?fit=max&auto=format&n=aTf2hmI2OEek9so_&q=85&s=7aa1227c4e3fba4b698af31792eb1eef" alt="設定ポータルの Custom OIDC フローのステップ 4「Provide your OIDC Configuration」。Discovery endpoint、Client ID、Client secret フィールドと、折りたたまれた Advanced settings セクションがハイライトされている" width="2000" height="1102" data-path="images/enterprise-connections/sso-custom-oidc-configuration.png" />

    <Tip>
      ポータルに入力する前にディスカバリーエンドポイントの URL が正しいか確認するには、ブラウザーで開いてみてください。正しいエンドポイントは、`issuer` の値が認可サーバーと一致する JSON ドキュメントを返します。
    </Tip>

    **Advanced settings** を展開し、値がアプリケーションと一致していることを確認します。ほとんどの認可サーバーではデフォルト値で動作します。

    | 設定 | デフォルト | 変更が必要な場合 |
    | - | - | - |
    | **Authentication method** | Client secret basic | アプリケーションが別の方式で登録されている場合は、**Client secret POST** または **Private key JWT** を選択します。**Private key JWT** の場合、Profound が署名用のキーペアを生成します。認可サーバーが Profound のサインインリクエストを検証できるよう、公開鍵を認可サーバーに登録してください |
    | **ID token signing algorithm** | RS256 | 認可サーバーが RS256 以外のアルゴリズムで ID トークンに署名する場合は、そのアルゴリズムを選択します |
    | **Use userinfo endpoint** | Off | 認可サーバーが必要なクレームを ID トークンに含めない場合はオンにします。ポータルは、ディスカバリードキュメントに記載された userinfo エンドポイントからユーザープロファイルを読み取ります |
    | **Require PKCE** | On | 認可サーバーが Proof Key for Code Exchange(PKCE)でサインインを完了できない場合を除き、オンのままにします |

    **Continue** を選択します。ポータルは、続行する前にディスカバリーエンドポイントに到達できることを確認します。
  </Step>

  <Step title="シングルサインオンをテストする" id="step-7">
    接続をテストする準備ができたら、**Continue to sign-in** を選択します。

    <img src="https://mintcdn.com/profound-37face47/aTf2hmI2OEek9so_/images/enterprise-connections/sso-custom-oidc-test.png?fit=max&auto=format&n=aTf2hmI2OEek9so_&q=85&s=8e67e3bfe8e97717d98730f942801487" alt="設定ポータルの Custom OIDC フローのステップ 5「Test Single Sign-On」。I am ready for a test sign-in チェックボックスの横にある Continue to sign-in ボタンがハイライトされている" width="1902" height="684" data-path="images/enterprise-connections/sso-custom-oidc-test.png" />

    ポータルから認可サーバーにリダイレクトされます。Profound アプリケーションに割り当てられた、確認済みドメインのアカウントでサインインします。

    * テストが成功した場合は、次のステップに進みます。
    * テストが失敗した場合は、ポータルに理由が表示されます。**Show session details** を選択するとセッション ID が表示され、IdP 管理者や Profound の[カスタマーサポート](mailto:support@tryprofound.com)とトラブルシューティングを行う際に役立ちます。設定を修正し、**Retry Single Sign-On** を選択します。

    <Tip>
      接続のテストに使用するアカウントが、IdP で Profound アプリケーションに割り当てられていることを確認してください。
    </Tip>

    テストは必要な回数だけ実行できます。テストは自社の Profound 組織内で行われ、次のステップで SSO を有効にするまで、チームは通常どおりサインインを続けられます。
  </Step>

  <Step title="SSO を有効にする" id="step-8">
    テストに合格したら、ポータルから直接ドメインの SSO を有効にします。

    **Enterprise Setup** ページに戻ると、**Single Sign-On** カードのステータスが **SSO Enabled** になり、ドメインが **Verified** と表示されます。**Check status** を選択すると表示が更新されます。

    <img src="https://mintcdn.com/profound-37face47/KA2VQvbNybfiIidf/images/enterprise-connections/sso-success.png?fit=max&auto=format&n=KA2VQvbNybfiIidf&q=85&s=dc627643c2263f21df478dd6f75c7ff2" alt="SSO Enabled ステータス、Verified ドメイン、ハイライトされた Check status ボタンを表示する Enterprise Setup ページのスクリーンショット" width="1766" height="862" data-path="images/enterprise-connections/sso-success.png" />
  </Step>
</Steps>

SSO を有効にすると、設定したドメインと一致するメールアドレスを持つユーザーは、認証のために自動的に認可サーバーへ誘導されます。

## トラブルシューティング

<AccordionGroup>
  <Accordion title="ディスカバリーエンドポイントに到達できない。">
    入力した URL が認可サーバーの OIDC ディスカバリードキュメントであることを確認してください。URL は次の条件を満たす必要があります。

    * 認可サーバーの issuer URL で始まる
    * `/.well-known/openid-configuration` で終わる

    ディスカバリーエンドポイントを、認可サーバーのメタデータ URL と混同する場合があります。メタデータ URL は似ていますが、`openid-configuration` で終わりません。
  </Accordion>

  <Accordion title="テストサインインが「The identity provider denied access」で失敗する。">
    IdP が、テストユーザーの Profound アプリケーションへのサインインを拒否しました。接続のテストに使用しているアカウントが、IdP でアプリケーションに割り当てられていることを確認してください。Okta のカスタム認可サーバーを使用している場合は、そのサーバーのアクセスポリシーが Profound アプリケーションに適用されていることも確認してください。
  </Accordion>
</AccordionGroup>

## 注意事項

* Profound の各組織には、それぞれ独自の SSO 接続が必要です。
* サブドメインはルートドメインと同じ SSO 接続を使用できません。各サブドメインには独自の接続が必要です。
* ドメインの SSO が有効になっている間は、そのドメインの確認用 TXT レコードを削除しないでください。
* 設定中にサポートが必要な場合は、[カスタマーサポート](mailto:support@tryprofound.com)にお問い合わせください。
