ClickHouse/docs/ja/cloud/security/saml-sso-setup.md

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

277 lines
17 KiB
Markdown
Raw Normal View History

2024-11-18 02:58:58 +00:00
---
sidebar_label: SAML SSO設定
slug: /ja/cloud/security/saml-setup
title: SAML SSO設定
description: ClickHouse CloudでのSAML SSOの設定方法
---
# SAML SSO設定
:::note
SAML SSOはプライベートプレビュー中です。利用可能かどうか、お問い合わせはsupport@clickhouse.comまでご連絡ください。
:::
ClickHouse Cloudは、セキュリティアサーションマークアップ言語SAMLを介したシングルサインオンSSOをサポートしています。これにより、アイデンティティプロバイダーIdPを使用して安全にClickHouse Cloudの組織にサインインできます。
現在、サービスプロバイダー主導のSSO、別々の接続を使用する複数の組織、およびジャストインタイムプロビジョニングをサポートしています。ドメイン間アイデンティティ管理システムSCIMや属性マッピングはまだサポートしていません。
## 始める前に
IdPでの管理権限およびClickHouse Cloud組織での**管理者**ロールが必要です。IdP内での接続設定の後、以下の手順で求められる情報を使用してプロセスを完了するためにご連絡ください。
SAML接続に加え、**組織への直接リンク**を設定することをお勧めします。これにより、ログインプロセスが簡単になります。各IdPでの設定は異なるため、お使いのIdPについての情報を以下でお読みください。
## IdPの設定方法
### 全てのIdPs
全ての設定には組織IDが必要です。組織IDを取得するには次の手順を行います
1. [ClickHouse Cloud](https://console.clickhouse.cloud)の組織にサインインしてください。
<img src='https://github.com/ClickHouse/clickhouse-docs/assets/110556185/0cb69e9e-1506-4eb4-957d-f104d8c15f3a'
class="image"
alt="Organization ID"
style={{width: '60%', display: 'inline'}} />
3. 左下隅で、**組織**の下にある組織名をクリックします。
4. ポップアップメニューで、**組織の詳細**を選択します。
5. 下記で使うための**組織ID**をメモしておいてください。
### Okta SAMLの設定
各ClickHouse組織に対して、Oktaで2つのアプリ統合を設定します1つのSAMLアプリと、直接リンクを格納するためのブックマークです。
#### アクセスを管理するためのグループを作成:
1. **管理者**としてOktaインスタンスにログインします。
2. 左側で**グループ**を選択します。
3. **グループを追加**をクリックします。
4. グループの名前と説明を入力します。このグループはSAMLアプリとその関連ブックマークアプリの間のユーザーを一貫させるために使用されます。
5. **保存**をクリックします。
6. 作成したグループの名前をクリックします。
7. このClickHouse組織にアクセスを許可したいユーザーを割り当てるために**人を割り当てる**をクリックします。
#### ユーザーがシームレスにログインできるようにブックマークアプリを作成:
1. 左側で**アプリケーション**を選択し、次に**アプリケーション**のサブヘディングを選択します。
2. **アプリカタログを閲覧**をクリックします。
3. **ブックマークアプリ**を検索して選択します。
4. **統合を追加**をクリックします。
5. アプリのラベルを選択します。
6. URLとして`https://console.clickhouse.cloud?connection={organizationid}`を入力します。
7. **割り当て**タブに移動し、上記で作成したグループを追加します。
#### 接続を可能にするSAMLアプリを作成
1. 左側で**アプリケーション**を選択し、次に**アプリケーション**のサブヘディングを選択します。
2. **アプリ統合を作成**をクリックします。
3. SAML 2.0を選択し、次をクリックします。
4. アプリケーションの名前を入力し、**アプリケーションアイコンをユーザーに表示しない**のボックスをチェックし、次をクリックします。
5. 以下の値を使用して、SAML設定画面を入力します。
| フィールド | 値 |
|-----------------|------------------------------------------|
| シングルサインオンURL | https://auth.clickhouse.cloud/login/callback?connection={organizationid} |
| オーディエンスURI (SPエンティティID) | urn:auth0:ch-production:{organizationid} |
| デフォルトリレーステート | 空白のまま |
| Name IDフォーマット | 指定なし |
| アプリケーションユーザー名 | Email |
| アプリケーションユーザー名の更新 | 作成および更新 |
7. 以下の属性ステートメントを入力します。
| フィールド | 値 |
|-----------------|------------|
| Name | email |
| Name format | Basic |
| Value | user.email |
8. **次へ**をクリックします。
9. フィードバック画面で求められる情報を入力し、**完了**をクリックします。
10. **割り当て**タブに移動し、上記で作成したグループを追加します。
11. 新しいアプリの**サインオン**タブで、**SAMLセットアップ手順を見る**ボタンをクリックします。
<img src='https://github.com/ClickHouse/clickhouse-docs/assets/110556185/8d316548-5fb7-4d3a-aad9-5d025c51f158'
class="image"
alt="Okta SAML Setup Instructions"
style={{width: '60%', display: 'inline'}} />
13. 以下の3つのアイテムを集めて、プロセスを完了するために[サポートケースを提出](#submit-a-support-case)してください。
- Identity Provider Single Sign-On URL
- Identity Provider Issuer
- X.509 Certificate
### Google SAMLの設定
各組織ごとに1つのSAMLアプリをGoogleに設定し、複数組織SSOを使用する場合はユーザーに直接リンク`https://console.clickhouse.cloud?connection={organizationId}`)をブックマークとして提供する必要があります。
1. Google管理コンソールadmin.google.comに移動します。
<img src='https://github.com/ClickHouse/clickhouse-docs/assets/110556185/b931bd12-2fdf-4e25-b0b5-1170bbd20760'
class="image"
alt="Google SAML App"
style={{width: '60%', display: 'inline'}} />
2. **アプリ**をクリックし、左側で**ウェブとモバイルアプリ**を選択します。
3. 上部メニューから**アプリを追加**をクリックし、次に**カスタムSAMLアプリを追加**を選択します。
4. アプリの名前を入力し、**続行**をクリックします。
5. 以下の2つのアイテムを集め、情報を送信するために[サポートケースを提出](#submit-a-support-case)してください。注意:このデータをコピーする前に設定を完了した場合は、アプリのホーム画面から**メタデータをダウンロード**をクリックしてX.509証明書を取得してください。
- SSO URL
- X.509 Certificate
7. 以下のACS URLとエンティティIDを入力します。
| フィールド | 値 |
|---------------|---------------------------------------------------------------|
| ACS URL | https://auth.clickhouse.cloud/login/callback?connection={organizationid} |
| エンティティID | urn:auth0:ch-production:{organizationid} |
8. **署名付き応答**のボックスにチェックを入れます。
9. Name IDフォーマットとして**EMAIL**を選択し、Name IDを**基本情報 > プライマリメール**のままにしておきます。
10. **続行**をクリックします。
11. 以下の属性マッピングを入力します:
| フィールド | 値 |
|-------------------|---------|
| 基本情報 | プライマリメール |
| アプリ属性 | email |
13. **完了**をクリックします。
14. アプリを有効にするには**オフ**をクリックし、設定を**全員に対してオン**に変更します。左側のオプションを選択して、アクセル制限をグループまたは組織単位へと行うこともできます。
### Azure (Microsoft) SAMLの設定
Azure (Microsoft) SAMLはAzure Active Directory (AD)やMicrosoft Entraとも呼ばれます。
組織ごとに別々のサインオンURLを用意したアプリケーション統合を1つセットアップします。
1. Microsoft Entra管理センターにログオンします。
2. 左側で**アプリケーション > エンタープライズアプリケーション**に移動します。
3. 上部メニューで**新しいアプリケーション**をクリックします。
4. 上部メニューで**新しいアプリケーションを作成**をクリックします。
5. 名前を入力し、**ギャラリーにない他のアプリケーションを統合する(非ギャラリー)**を選択し、**作成**をクリックします。
<img src='https://github.com/ClickHouse/clickhouse-docs/assets/110556185/5577b3ed-56e0-46b9-a9f7-80aa27f9a97a'
class="image"
alt="Azure Non-Gallery App"
style={{width: '60%', display: 'inline'}} />
6. 左側で**ユーザーとグループ**をクリックしてユーザーを割り当てます。
7. 左側で**シングルサインオン**をクリックします。
8. **SAML**をクリックします。
9. 基本設定SAML構成画面を以下の設定で埋めます。
| フィールド | 値 |
|-----------------------------|---------------------------------------------------------------|
| 識別子エンティティID | urn:auth0:ch-production:{organizationid} |
| 応答URLアサーション消費サービスURL | https://auth.clickhouse.cloud/login/callback?connection={organizationid} |
| サインオンURL | https://console.clickhouse.cloud?connection={organizationid} |
| リレーステート | 空白 |
| ログアウトURL | 空白 |
11. 以下を属性とクレームの下にAを追加またはUを更新
| クレーム名 | フォーマット | ソース属性 |
|------------------------------------------|---------------|------------------|
| (U) 一意のユーザー識別子Name ID | メールアドレス | user.mail |
| (A) email | Basic | user.mail |
| (U) /identity/claims/name | 省略された | user.mail |
<img src='https://github.com/ClickHouse/clickhouse-docs/assets/110556185/b59af49f-4cdc-47f4-99e0-fe4a7ffbceda'
class="image"
alt="Attributes and Claims"
style={{width: '60%', display: 'inline'}} />
12. 以下の2つのアイテムを収集し、[サポートケースを提出](#submit-a-support-case)してプロセスを完了させてください:
- ログインURL
- 証明書Base64
### サポートケースを提出
1. ClickHouse Cloudコンソールに戻ります。
2. 左側で**ヘルプ**を選択し、サポートサブメニューを選択します。
3. **新しいケース**をクリックします。
4. 件名に「SAML SSO設定」と入力します。
5. 説明欄に、上記の手順から集めたリンクを貼り付け、証明書をチケットに添付します。
6. どのドメインがこの接続に許可されるべきかもお知らせくださいdomain.com、domain.aiなど
7. 新しいケースを作成します。
8. ClickHouse Cloud内での設定を完了し、テスト準備が整った際にお知らせします。
9. 元の認証方法でサインインし、新しいSSOアカウントに管理者ロールを割り当ててください。
- メール + パスワードアカウントの場合は、`https://clickhouse.cloud/?with=email`を使用してください。
- ソーシャルログインの場合は、適切なボタン(**Googleで続行**または**Microsoftで続行**)をクリックしてください。
## 動作方法
### サービスプロバイダー主導のSSO
私たちはサービスプロバイダー主導のSSOのみを利用しています。これは、ユーザーが`https://console.clickhouse.cloud`にアクセスし、メールアドレスを入力してIdPにリダイレクトされることを意味します。IdP経由で既に認証されているユーザーは、ログインページでメールアドレスを入力せずに、直接リンクを使用して自動的に組織にログインできます。
### ユーザーロールの割り当て
ユーザーは、IdPアプリケーションに割り当てられて初めて、ClickHouse Cloudコンソールに表示されます。組織内で少なくとも1人のSSOユーザーが管理者ロールを持つ必要があります。元の認証方法を使用して、SSOロールを更新するにはソーシャルログインまたは`https://clickhouse.cloud?with=email`を使用してログインしてください。
### SSOを利用しないユーザーの削除
SSOユーザーを設定し、少なくとも1人のユーザーに管理者ロールを割り当てた後、管理者は他の方法ソーシャル認証またはユーザーID + パスワードを使用しているユーザーを削除できます。Google認証はSSO設定後も機能し続けます。ユーザーID + パスワードのユーザーは、メールドメインに基づいてSSOへ自動的にリダイレクトされますが、`https://clickhouse.cloud?with=email`を使用するとリダイレクトを回避できます。
### ユーザー管理
ClickHouse Cloudは現在SSOのためにSAMLを実装していますが、ユーザー管理のためのSCIMはまだ実装していません。つまり、SSOユーザーはClickHouse Cloud組織にアクセスするために、IdP内のアプリケーションに割り当てられる必要があります。ユーザーはClickHouse Cloudに一度ログインすると、組織内の**ユーザー**エリアに表示されます。IdPでユーザーが削除されると、SSOを使用してClickHouse Cloudにログインできなくなりますが、SSOユーザーは管理者が手動で削除するまで組織内に表示され続けます。
### マルチオーガナイゼーションSSO
ClickHouse Cloudは、各組織に別々の接続を提供することで、複数組織のSSOをサポートします。各組織にログインするには、直接リンク`https://console.clickhouse.cloud?connection={organizationid}`)を使用してください。別の組織にログインする前に一度ログアウトすることを忘れずにしてください。
## 追加情報
認証の際にセキュリティは最優先事項です。そのため、SSOを実装する際にいくつかの決定を行いましたのでお知らせします。
- **サービスプロバイダーによって開始される認証フローのみを処理します。** ユーザーは、`https://console.clickhouse.cloud`に移動してメールアドレスを入力し、IdPにリダイレクトされる必要があります。ブックマークアプリケーションまたはショートカットを追加する手順は、ユーザーがURLを覚える必要がないように便宜上提供されています。
- **IdP経由でアプリに割り当てられた全てのユーザーは同じメールドメインを持つ必要があります。** ClickHouseアカウントにアクセスしたいベンダー、契約者、またはコンサルタントがいる場合、彼らは従業員と同じドメインのメールアドレスuser@domain.comを持つ必要があります。
- **SSOと非SSOアカウントを自動的にリンクしません。** 同じメールアドレスを使用していても、ClickHouseユーザーリストに複数のアカウントが表示されることがあります。