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

# SAML SSO の設定

> ClickHouse Cloud で SAML SSO を設定する方法

export const EnterprisePlanFeatureBadge = ({feature = 'この機能', support = false, linking_verb_are = false}) => {
  return <div className="enterprisePlanFeatureContainer">
            <div className="enterprisePlanFeatureBadge">
                Enterpriseプランの機能
            </div>
            <div>
                <p>{feature} {linking_verb_are ? 'は' : 'は'} Enterpriseプランで利用できます。{support ? `この機能を有効にするには、サポートにお問い合わせください。` : 'アップグレードするには、Cloud Console のプランページにアクセスしてください。'}</p>
            </div>
        </div>;
};

export const Image = ({img, alt, size = "lg"}) => {
  const normalizedSize = ["sm", "md", "lg"].includes(size) ? size : "lg";
  return <div className={`ch-image-${normalizedSize}`}>
      <Frame>
        <img src={img} alt={alt} />
      </Frame>
    </div>;
};

<EnterprisePlanFeatureBadge feature="SAML SSO" />

ClickHouse Cloud は、Security Assertion Markup Language (SAML) によるシングルサインオン (SSO) をサポートしています。これにより、アイデンティティプロバイダー (IdP) で認証することで、ClickHouse Cloud 組織に安全にサインインできます。

サービスプロバイダー開始型 SSO、個別の接続を使用する複数の組織、ならびにジャストインタイムプロビジョニングをサポートしています。また、Okta をサポートする [SCIM provisioning](/docs/ja/products/cloud/guides/security/cloud-access-management/scim-setup) をプライベートプレビューで提供しています。現時点では、属性マッピングには対応していません。

SAML インテグレーションを有効にすると、新規ユーザーに割り当てるデフォルトのロールを指定したり、セッションタイムアウトの設定を調整したりすることもできます。

<div id="before-you-begin">
  ## 始める前に
</div>

IdP での管理者権限、自身のドメインの DNS 設定に TXT レコードを追加する権限、そして ClickHouse Cloud 組織での **Admin** ロールが必要です。ログイン手順を簡略化するため、SAML 接続に加えて、**組織への直接リンク**を設定することをおすすめします。この設定方法は IdP ごとに異なります。お使いの IdP での設定方法については、このまま読み進めてください。

<div id="how-it-works">
  ## 仕組み
</div>

SAML SSO を設定すると、ユーザーはサービスプロバイダー開始型のフローでサインインします。

1. ユーザーは `https://console.clickhouse.cloud` にアクセスし、メールアドレスを入力します (または、組織の直接リンクを使用します) 。
2. ClickHouse Cloud は認証のため、ユーザーをアイデンティティプロバイダーにリダイレクトします。
3. 認証が成功すると、アイデンティティプロバイダーはユーザーを ClickHouse Cloud にリダイレクトします。
4. その後、ユーザーは ClickHouse Cloud にサインインし、初回ログイン時にアカウントがジャストインタイムでプロビジョニングされ、設定したデフォルトロールが割り当てられます。

このガイドの残りでは、一回限りの設定について説明します。

<div id="how-to-configure-your-idp">
  ## IdP の設定方法
</div>

<Steps>
  <Step title="組織設定にアクセスする" id="access-organization-settings">
    左下にある組織名をクリックし、\[Organization details] を選択します。
  </Step>

  <Step title="SAMLシングルサインオンを有効にする" id="enable-saml-sso">
    `Enable SAML single sign-on` の横にあるトグルをクリックします。セットアップ中にこの画面を何度か参照するため、このまま開いておいてください。

    <Image img="https://mintcdn.com/private-7c7dfe99/7KTNIE_ER4ouwRNt/images/cloud/security/saml-self-serve-1.webp?fit=max&auto=format&n=7KTNIE_ER4ouwRNt&q=85&s=37bc32dd8c704500899a452bc388adcc" size="lg" alt="SAMLセットアップを開始" force width="2136" height="1334" data-path="images/cloud/security/saml-self-serve-1.webp" />
  </Step>

  <Step title="ID プロバイダーにアプリケーションを作成する" id="create-idp-application">
    ID プロバイダー内にアプリケーションを作成し、`Enable SAML single sign-on` 画面に表示される値を ID プロバイダーの設定にコピーしてください。この手順の詳細については、以下の該当する ID プロバイダーの説明を参照してください。

    * [Okta](#okta)
    * [Google](#google)
    * [Azure (Microsoft)](#azure)
    * [Duo](#duo)

    <Tip>
      ClickHouse は IdP 主導のサインインをサポートしていません。ユーザーが ClickHouse Cloud に簡単にアクセスできるように、このサインイン URL 形式を使ってユーザー用のブックマークを設定してください: `https://console.clickhouse.cloud/?connection={orgId}`。ここで `{orgID}` は、Organization details ページにある Organization ID です。
    </Tip>

    <Image img="https://mintcdn.com/private-7c7dfe99/7KTNIE_ER4ouwRNt/images/cloud/security/saml-self-serve-2.webp?fit=max&auto=format&n=7KTNIE_ER4ouwRNt&q=85&s=b7667eb8cf23219747842818880e3007" size="lg" alt="ID プロバイダーのアプリケーションを作成する" force width="2952" height="1744" data-path="images/cloud/security/saml-self-serve-2.webp" />
  </Step>

  <Step title="メタデータURLをSAML設定に追加する" id="add-metadata-url">
    SAMLプロバイダから`Metadata URL`を取得します。ClickHouse Cloudに戻り、`Next: Provide metadata URL`をクリックして、URLをテキストボックスに貼り付けます。

    <Image img="https://mintcdn.com/private-7c7dfe99/7KTNIE_ER4ouwRNt/images/cloud/security/saml-self-serve-3.webp?fit=max&auto=format&n=7KTNIE_ER4ouwRNt&q=85&s=b6e65734eba7b75333347dcee2e56498" size="lg" alt="メタデータURLを追加" force width="2962" height="1536" data-path="images/cloud/security/saml-self-serve-3.webp" />
  </Step>

  <Step title="ドメイン検証コードを取得する" id="get-domain-verification-code">
    `Next: Verify your domains` をクリックします。テキストボックスにドメインを入力し、`Check domain` をクリックします。DNS プロバイダで TXT レコードに追加するためのランダムな検証コードが生成されます。

    <Image img="https://mintcdn.com/private-7c7dfe99/7KTNIE_ER4ouwRNt/images/cloud/security/saml-self-serve-4.webp?fit=max&auto=format&n=7KTNIE_ER4ouwRNt&q=85&s=5c698b22fd991c2af8cae28135f58092" size="lg" alt="検証するドメインを追加" force width="2954" height="1530" data-path="images/cloud/security/saml-self-serve-4.webp" />
  </Step>

  <Step title="ドメインを確認する" id="verify-your-domain">
    DNSプロバイダーでTXTレコードを作成します。`TXT record name` を、DNSプロバイダー側のTXTレコードのNameフィールドにコピーします。`Value` を、DNSプロバイダー側のContentフィールドにコピーします。`Verify and Finish` をクリックして、手順を完了します。

    <Note>
      DNSレコードの更新と確認が完了するまで、数分かかる場合があります。設定ページを離れても、最初からやり直すことなく、後で戻って手順を完了できます。検証値は、最初に生成されてから48時間有効です。
    </Note>

    <Image img="https://mintcdn.com/private-7c7dfe99/7KTNIE_ER4ouwRNt/images/cloud/security/saml-self-serve-5.webp?fit=max&auto=format&n=7KTNIE_ER4ouwRNt&q=85&s=9ef00f036771c1f1f2d7647b39c7c391" size="lg" alt="ドメインを確認する" force width="2962" height="1594" data-path="images/cloud/security/saml-self-serve-5.webp" />
  </Step>

  <Step title="デフォルトのロールとセッションタイムアウトを更新" id="update-defaults">
    SAML の設定が完了したら、すべてのユーザーにログイン時に割り当てるデフォルトのロールを設定し、セッションタイムアウトも調整できます。割り当て可能なシステムロールの一覧については、[Console のロールと権限](/docs/ja/products/cloud/reference/security/console-roles)を参照してください。
  </Step>

  <Step title="管理者ユーザーを設定する" id="configure-your-admin-user">
    <Note>
      別の認証方式で設定されたユーザーは、組織内の管理者が削除するまで保持されます。
    </Note>

    SAML 経由で最初の管理者ユーザーを割り当てるには、次の手順に従います。

    1. [ClickHouse Cloud](https://console.clickhouse.cloud) からログアウトします。
    2. ID プロバイダーで、管理者ユーザーを ClickHouse アプリケーションに割り当てます。
    3. ユーザーに [https://console.clickhouse.cloud/?connection=\{orgId}](https://console.clickhouse.cloud/?connection=\{orgId}) (ショートカット URL) からログインしてもらいます。前の手順で作成したブックマークからアクセスしてもかまいません。ユーザーは初回ログインするまで ClickHouse Cloud に表示されません。
    4. デフォルトの SAML ロールが Admin 以外の場合は、新しい SAML ユーザーのロールを更新するために、いったんログアウトしてから元の認証方式で再度ログインする必要がある場合があります。
       * メール + パスワードのアカウントの場合は、`https://console.clickhouse.cloud/?with=email` を使用してください。
       * ソーシャルログインの場合は、該当するボタン (**Continue with Google** または **Continue with Microsoft**) をクリックしてください。

    <Note>
      上記の `?with=email` にある `email` は、プレースホルダーではなく文字どおりのパラメーター値です
    </Note>

    5. もう一度ログアウトし、以下の最後の手順を完了するためにショートカット URL から再度ログインします。

    <Tip>
      手順を減らすには、最初は SAML のデフォルトロールを `Admin` に設定しておくこともできます。ID プロバイダーで管理者を割り当ててそのユーザーが初回ログインしたら、その後でデフォルトロールを別の値に変更できます。
    </Tip>
  </Step>

  <Step title="他の認証方式を削除する" id="remove-other-auth-methods">
    インテグレーションを完了するには、SAML 以外の方式を使用しているユーザーをすべて削除し、アクセスを identity provider connection に由来するユーザーのみに制限します。
  </Step>
</Steps>

<div id="configure-idp">
  ### アイデンティティプロバイダーを設定する
</div>

<Tabs>
  <Tab title="Okta" id="okta">
    Okta では、ClickHouse の各組織ごとに 2 つの App Integration を設定します。1 つは SAML アプリ、もう 1 つは 直接リンク を保持するためのブックマークです。

    #### アクセス管理用のグループを作成する

    1. **Administrator** として Okta インスタンスにログインします。
    2. 左側で **Groups** を選択します。
    3. **Add group** をクリックします。
    4. グループの名前と説明を入力します。このグループは、SAML アプリと関連するブックマークアプリの間でユーザーを一致させるために使用します。
    5. **Save** をクリックします。
    6. 作成したグループ名をクリックします。
    7. **Assign people** をクリックし、この ClickHouse 組織へのアクセスを許可するユーザーを割り当てます。

    #### ユーザーがシームレスにログインできるようにブックマークアプリを作成する

    1. 左側で **Applications** を選択し、次に **Applications** サブ見出しを選択します。
    2. **Browse App Catalog** をクリックします。
    3. **Bookmark App** を検索して選択します。
    4. **Add integration** をクリックします。
    5. アプリのラベルを選択します。
    6. URL に `https://console.clickhouse.cloud/?connection={organizationid}` を入力します
    7. **Assignments** タブに移動し、上で作成したグループを追加します。

    #### 接続を有効にするための SAML アプリを作成する

    1. 左側で **Applications** を選択し、次に **Applications** サブ見出しを選択します。

    2. **Create App Integration** をクリックします。

    3. SAML 2.0 を選択し、**Next** をクリックします。

    4. アプリケーション名を入力し、**Don't display application icon to users** の横にあるチェックボックスをオンにしてから **Next** をクリックします。

    5. 次の値を使用して SAML 設定画面を入力します。

       | フィールド                          | 値                                          |
       | ------------------------------ | ------------------------------------------ |
       | Single Sign On URL             | コンソールから Single Sign-On URL をコピーします         |
       | Audience URI (SP Entity ID)    | コンソールから Service Provider Entity ID をコピーします |
       | Default RelayState             | 空欄のままにします                                  |
       | Name ID format                 | Unspecified                                |
       | Application username           | Email                                      |
       | Update application username on | Create and update                          |

    6. 次の Attribute Statement を入力します。

       | Name  | Name format | Value      |
       | ----- | ----------- | ---------- |
       | email | Basic       | user.email |

    7. **Next** をクリックします。

    8. Feedback 画面で必要な情報を入力し、**Finish** をクリックします。

    9. **Assignments** タブに移動し、上で作成したグループを追加します。

    10. 新しいアプリの **Sign On** タブで、**Copy metadata URL** ボタンをクリックします。

    11. [Add the metadata URL to your SAML configuration](#add-metadata-url) に戻り、手順を続けます。
  </Tab>

  <Tab title="Google" id="google">
    multi-org SSO を使用する場合は、組織ごとに Google で 1 つの SAML アプリを設定し、ユーザーにはブックマーク用に直接リンク (`https://console.clickhouse.cloud/?connection={organizationId}`) を提供する必要があります。

    #### Google のウェブアプリを作成する

    1. Google Admin console (admin.google.com) に移動します。

           <Image img="https://mintcdn.com/private-7c7dfe99/7KTNIE_ER4ouwRNt/images/cloud/security/saml-google-app.webp?fit=max&auto=format&n=7KTNIE_ER4ouwRNt&q=85&s=85e5ddbddb3a53903268e8bb4595863d" size="md" alt="Google SAML App" force width="1224" height="608" data-path="images/cloud/security/saml-google-app.webp" />

    2. **Apps** をクリックし、左側の **Web and mobile apps** をクリックします。

    3. 上部メニューの **Add app** をクリックし、**Add custom SAML app** を選択します。

    4. アプリ名を入力し、**Continue** をクリックします。

    5. メタデータ URL をコピーして、控えておきます。

    6. 以下の ACS URL と Entity ID を入力します。

       | Field     | Value                                      |
       | --------- | ------------------------------------------ |
       | ACS URL   | コンソールから Single Sign-On URL をコピーします         |
       | Entity ID | コンソールから Service Provider Entity ID をコピーします |

    7. **Signed response** のチェックボックスをオンにします。

    8. Name ID Format には **EMAIL** を選択し、Name ID は **Basic Information > Primary email** のままにします。

    9. **Continue** をクリックします。

    10. 次の Attribute mapping を入力します。

        | Field             | Value         |
        | ----------------- | ------------- |
        | Basic information | Primary email |
        | App attributes    | email         |

    11. **Finish** をクリックします。

    12. アプリを有効にするには、まず全員に対して **OFF** をクリックし、設定を全員に対して **ON** に変更します。画面左側のオプションを選択すれば、アクセスをグループまたは組織単位に制限することもできます。

    13. 続行するには、[SAML 設定にメタデータ URL を追加する](#add-metadata-url) に戻ります。
  </Tab>

  <Tab title="Azure（Microsoft）" id="azure">
    Azure (Microsoft) SAML は、Azure Active Directory (AD) または Microsoft Entra と呼ばれることもあります。

    #### Azure エンタープライズ アプリケーションを作成する

    各組織に対して、それぞれ別個のサインオン URL を持つ 1 つのアプリケーション インテグレーションを設定します。

    1. Microsoft Entra 管理センターにログインします。

    2. 左側の **Applications > Enterprise applications** に移動します。

    3. 上部メニューの **New application** をクリックします。

    4. 上部メニューの **Create your own application** をクリックします。

    5. 名前を入力し、**Integrate any other application you don't find in the gallery (Non-gallery)** を選択して、**Create** をクリックします。

           <Image img="https://mintcdn.com/private-7c7dfe99/7KTNIE_ER4ouwRNt/images/cloud/security/saml-azure-app.webp?fit=max&auto=format&n=7KTNIE_ER4ouwRNt&q=85&s=2b17a3cd8cc1fb3c8b4612fb0a4e4f14" size="md" alt="Azure Non-Gallery App" force width="980" height="624" data-path="images/cloud/security/saml-azure-app.webp" />

    6. 左側の **Users and groups** をクリックし、ユーザーを割り当てます。

    7. 左側の **Single sign-on** をクリックします。

    8. **SAML** をクリックします。

    9. 次の設定を使用して、Basic SAML Configuration 画面を設定します。

       | フィールド                                      | 値                                                               |
       | ------------------------------------------ | --------------------------------------------------------------- |
       | 識別子 (Entity ID)                            | コンソールから Service Provider Entity ID をコピー                         |
       | Reply URL (Assertion Consumer Service URL) | コンソールから Single Sign-On URL をコピー                                 |
       | Sign on URL                                | `https://console.clickhouse.cloud/?connection={organizationid}` |
       | Relay State                                | 空欄                                                              |
       | Logout URL                                 | 空欄                                                              |

    10. Attributes & Claims で、以下を追加 (A) または更新 (U) します。

        | クレーム名                                | フォーマット        | ソース属性     |
        | ------------------------------------ | ------------- | --------- |
        | (U) Unique User Identifier (Name ID) | Email address | user.mail |
        | (A) email                            | Basic         | user.mail |
        | (U) /identity/claims/name            | Omitted       | user.mail |

            <Image img="https://mintcdn.com/private-7c7dfe99/7KTNIE_ER4ouwRNt/images/cloud/security/saml-azure-claims.webp?fit=max&auto=format&n=7KTNIE_ER4ouwRNt&q=85&s=639d6890c29c84209f474ad82c130d68" size="md" alt="Attributes and Claims" force width="1242" height="816" data-path="images/cloud/security/saml-azure-claims.webp" />

    11. metadata URL をコピーし、[Add the metadata URL to your SAML configuration](#add-metadata-url) に戻って手順を続けます。
  </Tab>

  <Tab title="Duo" id="duo">
    #### Duo 用の汎用 SAML サービスプロバイダを作成する

    1. [Duo Single Sign-On for Generic SAML Service Providers](https://duo.com/docs/sso-generic) の手順に従ってください。

    2. 次の Bridge Attribute のマッピングを使用します。

       | Bridge Attribute | ClickHouse Attribute |
       | :--------------- | :------------------- |
       | Email Address    | email                |

    3. 次の値を使用して、Duo の Cloud Application を更新します。

       | Field                                | Value                                                           |
       | :----------------------------------- | :-------------------------------------------------------------- |
       | Entity ID                            | コンソールから Service Provider Entity ID をコピーします                      |
       | Assertion Consumer Service (ACS) URL | コンソールから Single Sign-On URL をコピーします                              |
       | Service Provider Login URL           | `https://console.clickhouse.cloud/?connection={organizationid}` |

    4. metadata URL をコピーし、[Add the metadata URL to your SAML configuration](#add-metadata-url) に戻って設定を続けます。
  </Tab>
</Tabs>

<div id="troubleshooting">
  ## トラブルシューティング
</div>

<AccordionGroup>
  <Accordion title="システムの設定ミス、またはサービス障害の可能性があります">
    **原因:** サポートされていない identity-provider-initiated login を使用しています。

    **対処:** 直接リンク `https://console.clickhouse.cloud/?connection={organizationid}` を使用してください。これをユーザーの既定のログイン方法にするには、上記の アイデンティティプロバイダー の手順に従って設定してください。
  </Accordion>

  <Accordion title="アイデンティティプロバイダー に移動した後、ログインページに戻される">
    **原因:** アイデンティティプロバイダー でメール属性のマッピングが設定されていません。

    **対処:** 上記の アイデンティティプロバイダー の手順に従ってユーザーのメール属性を設定し、再度ログインしてください。
  </Accordion>

  <Accordion title="ユーザーがこのアプリケーションに割り当てられていない">
    **原因:** そのユーザーが アイデンティティプロバイダー 内の ClickHouse アプリケーションに割り当てられていません。

    **対処:** アイデンティティプロバイダー でそのユーザーをアプリケーションに割り当ててから、再度ログインしてください。
  </Accordion>

  <Accordion title="複数の SAML 組織がある場合でも、常に同じ組織に移動してしまう">
    **原因:** 最初の組織にまだログインしたままです。

    **対処:** ログアウトしてから、別の組織にログインしてください。
  </Accordion>

  <Accordion title="URL に一時的に access denied と表示される">
    **原因:** メールドメインが設定済みのドメインと一致していません。

    **対処:** このエラーの解決については、サポートにお問い合わせください。
  </Accordion>
</AccordionGroup>

<div id="faq">
  ## よくある質問
</div>

<AccordionGroup>
  <Accordion title="ClickHouse Cloud は identity-provider-initiated サインインをサポートしていますか？">
    いいえ。サービスプロバイダー開始型 フローのみに対応しています。ユーザーは `https://console.clickhouse.cloud` にアクセスしてメールアドレスを入力し、アイデンティティプロバイダー にリダイレクトされます。ユーザーが URL を覚えなくて済むよう、ブックマークまたは直接リンク (`https://console.clickhouse.cloud/?connection={organizationid}`) を設定してください。
  </Accordion>

  <Accordion title="複数の組織で SAML SSO を使うにはどうすればよいですか？">
    ClickHouse Cloud は、組織ごとに個別の connection を設定することで、複数組織での SSO をサポートしています。各組織へのログインには直接リンク (`https://console.clickhouse.cloud/?connection={organizationid}`) を使用し、別の組織にログインする前に現在の組織からログアウトしてください。ユーザーが `https://console.clickhouse.cloud` でメールアドレスを入力した際に、該当ドメインのユーザーを自動的に組織へ振り分けないようにしたい場合は、その動作を無効にするようサポートチケットを起票してください。
  </Accordion>

  <Accordion title="同じユーザーに対して複数のアカウントが表示されるのはなぜですか？">
    ClickHouse Cloud では、SSO アカウントと非 SSO アカウントは自動的に関連付けられないため、両方の方法でサインインしたユーザーは、同じメールアドレスであってもユーザー一覧に複数回表示されることがあります。
  </Accordion>
</AccordionGroup>

<div id="next-steps">
  ## 次のステップ
</div>

* [クラウドユーザーの管理](/docs/ja/products/cloud/guides/security/cloud-access-management/manage-cloud-users) — ユーザー権限を管理し、アクセスを SAML 接続のみに制限します。
* [SCIM provisioning](/docs/ja/products/cloud/guides/security/cloud-access-management/scim-setup) — ユーザーとグループのプロビジョニングを自動化します (プライベートプレビュー) 。
* [Console roles and permissions](/docs/ja/products/cloud/reference/security/console-roles) — デフォルトの SAML ロールとして割り当て可能なロールを確認できます。
