このページでは、Google Distributed Cloud(GDC)エアギャップ アプライアンスを組織の既存の ID プロバイダ(IdP)に接続する方法について説明します。IdP は、ユーザー ID を一元的に管理して保護し、認証サービスを提供するシステムです。既存の IdP に接続すると、ユーザーは組織の認証情報を使用して GDC にアクセスできます。GDC 内で別のアカウントを作成したり管理したりする必要はありません。このプロセスにより、シームレスで安全なログイン エクスペリエンスが実現します。IdP はグローバル リソースであるため、ユーザーは作業するゾーンに関係なく、同じ IdP を介して GDC にアクセスできます。
最初の ID プロバイダを設定して ID プロバイダに接続したら、GDC コンソールを使用して既存の ID プロバイダを追加で接続できます。
次のいずれかを使用して、既存の ID プロバイダに接続できます。
始める前に
既存の ID プロバイダを接続するために必要な権限を取得するには、組織の IAM 管理者に組織の IAM 管理者ロールの付与を依頼してください。ID プロバイダの接続時に指定する最初の管理者は、組織の IAM 管理者ロールも割り当てられている必要があります。
既存の ID プロバイダに接続する
ID プロバイダを接続するには、ID プロバイダから 1 つのクライアント ID とシークレットが必要です。コンソールを使用して、既存の OIDC または SAML プロバイダに接続できます。
既存の OIDC プロバイダに接続する
- GDC コンソールにログインします。次の例は、
org-1
という組織にログインした後のコンソールを示しています。 - ナビゲーション メニューで、[ID とアクセス権(IAM)] > [ID] をクリックします。
- [Setup New Identity Provider] をクリックします。
[ID プロバイダの構成] セクションで、次の手順を完了して [次へ] をクリックします。
- [ID プロバイダ] リストで、[Open ID Connect(OIDC)] を選択します。
- ID プロバイダ名を入力します。
- [Google Distributed Cloud URL] フィールドに、GDC へのアクセスに使用する URL を入力します。
- [発行元 URI] フィールドに、ID プロバイダに認可リクエストが送信される URL を入力します。Kubernetes API サーバーは、この URL を使用してトークン検証用の公開鍵を検出します。URL には HTTPS を使用する必要があります。
- [クライアント ID] フィールドに、ID プロバイダへの認証リクエストを行うクライアント アプリケーションの ID を入力します。
- [クライアント シークレット] セクションで、[クライアント シークレットを構成する(推奨)] を選択します。
- [クライアント シークレット] フィールドに、ID プロバイダと GDC エアギャップ アプライアンス間の共有シークレットであるクライアント シークレットを入力します。
省略可: [接頭辞] フィールドに接頭辞を入力します。接頭辞は [Identity provider prefix] フィールドです。接頭辞を入力します。この接頭辞は、ユーザー クレームとグループ クレームの先頭に追加されます。接頭辞は、異なる ID プロバイダ構成を区別するために使用されます。たとえば、接頭辞を
myidp
に設定すると、ユーザー クレームはmyidpusername@example.com
、グループ クレームはmyidpgroup@example.com
になることがあります。ロールベースのアクセス制御(RBAC)権限をグループに割り当てるときは、接頭辞も含める必要があります。省略可: [暗号化] セクションで、[暗号化されたトークンを有効にする] を選択します。
暗号化トークンを有効にするには、IdP 連携管理者ロールが必要です。組織の IAM 管理者に、IdP 連携管理者(
idp-federation-admin
)ロールを付与するよう依頼します。- [キー ID] フィールドにキー ID を入力します。鍵 ID は、JSON ウェブ暗号化トークン(JWT)の公開鍵です。OIDC プロバイダが鍵 ID を設定してプロビジョニングします。
- [復号鍵] フィールドに、PEM 形式の復号鍵を入力します。復号鍵は、暗号化を復号する非対称鍵です。OIDC プロバイダが復号鍵を設定してプロビジョニングします。
[属性を構成する] セクションで、次の手順を完了して [次へ] をクリックします。
- [OIDC プロバイダの認証局] フィールドに、ID プロバイダの Base64 でエンコードされた PEM エンコード証明書を入力します。詳細については、https://en.wikipedia.org/wiki/Privacy-Enhanced_Mail をご覧ください。
- 文字列を作成するには、ヘッダーを含めた証明書を
base64
でエンコードします。 - 結果の文字列は 1 行で含めます。例:
LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tC...k1JSUN2RENDQWFT==
- 文字列を作成するには、ヘッダーを含めた証明書を
- [グループ クレーム] フィールドに、ユーザーのグループ情報を保持する ID プロバイダ トークンのクレームの名前を入力します。
- [ユーザー クレーム] フィールドに、各ユーザーを識別するクレームを入力します。多くのプロバイダのデフォルトのクレームは
sub
です。ID プロバイダによっては、email
やname
などの他のクレームを選択できます。名前が競合しないように、email
以外のクレームには、発行元の URL が先頭に付加されます。 - 省略可: ID プロバイダが GKE Identity Service を使用している場合は、[カスタム属性] セクションで [追加] をクリックし、ユーザーの追加のクレーム(部門やプロフィール写真の URL など)の Key-Value ペアを入力します。
- ID プロバイダで追加のスコープが必要な場合は、[スコープ] フィールドに、ID プロバイダに送信するスコープをカンマ区切りで入力します。たとえば、Microsoft Azure と Okta では、
offline_access
スコープが必要です。 - [追加パラメータ] セクションに、ID プロバイダが必要とする追加の Key-Value ペア(カンマ区切り)を入力します。グループを承認する場合は、
resource=token-groups-claim
を渡します。Microsoft Azure と Okta の認証で認証サーバーが同意を求めるプロンプトを表示する場合は、prompt=consent
を設定します。Cloud Identity の場合は、prompt=consent,access_type=offline
を設定します。
- [OIDC プロバイダの認証局] フィールドに、ID プロバイダの Base64 でエンコードされた PEM エンコード証明書を入力します。詳細については、https://en.wikipedia.org/wiki/Privacy-Enhanced_Mail をご覧ください。
[Specify initial admins] セクションで、次の手順を完了して [Next] をクリックします。
- 個々のユーザーまたはグループを初期管理者として追加するかどうかを選択します。
- [ユーザー名またはグループ エイリアス] フィールドに、組織にアクセスするユーザーまたはグループのメールアドレスを入力します。管理者の場合は、メールアドレス(例:
sally@example.com
)を入力します。接頭辞は、myidp-sally@example.com
のようにユーザー名の前に付加されます。
選択内容を確認し、[設定] をクリックします。
新しい ID プロバイダ プロファイルが [ID プロファイル] リストに表示されます。
既存の SAML プロバイダに接続する
- GDC コンソールにログインします。
- ナビゲーション メニューで、[ID とアクセス] > [ID] をクリックします。
[ID プロバイダの構成] セクションで、次の手順を完了して [次へ] をクリックします。
- [ID プロバイダ] プルダウン メニューで、[Security Assertion Markup Language(SAML)] を選択します。
- ID プロバイダ名を入力します。
- [Identity ID] フィールドに、ID プロバイダに認証リクエストを行うクライアント アプリケーションの ID を入力します。
- [SSO URI] フィールドに、プロバイダのシングル サインオン エンドポイントの URL を入力します。例:
https://www.idp.com/saml/sso
。 [Identity provider prefix] フィールドに接頭辞を入力します。この接頭辞は、ユーザーとグループのクレームの先頭に追加されます。接頭辞は、異なる ID プロバイダ構成を区別するために使用されます。たとえば、接頭辞を
myidp
に設定すると、ユーザー クレームはmyidpusername@example.com
、グループ クレームはmyidpgroup@example.com
と表示されることがあります。RBAC 権限をグループに割り当てるときは、接頭辞も含める必要があります。省略可: [SAML Assertions] セクションで、[Enable encrypted SAML assertions] を選択します。
暗号化された SAML アサーションを有効にするには、IdP 連携管理者ロールが必要です。組織 IAM 管理者に、IdP 連携管理者(
idp-federation-admin
)ロールの付与を依頼します。- [Encryption certificate] フィールドに、PEM 形式の暗号化証明書を入力します。暗号化証明書は、SAML プロバイダの生成後に受け取ります。
- [復号鍵] フィールドに復号鍵を入力します。復号鍵は、SAML プロバイダの生成後に受け取ります。
省略可: [SAML Signed requests] セクションで、[Enable signed SAML requests] をオンにします。
- [署名証明書] フィールドに、PEM ファイル形式の署名証明書を入力します。SAML プロバイダが署名証明書を設定して生成します。
- [署名鍵] フィールドに、PEM ファイル形式で署名鍵を入力します。SAML プロバイダが署名鍵を設定して生成します。
[属性を構成] ページで、次の手順を完了して [次へ] をクリックします。
- [IDP certificate] フィールドに、ID プロバイダの base64 でエンコードされた PEM エンコード証明書を入力します。詳細については、https://en.wikipedia.org/wiki/Privacy-Enhanced_Mail をご覧ください。
- 文字列を作成するには、ヘッダーを含めた証明書を
base64
でエンコードします。 - 結果の文字列は 1 行で含めます。例:
LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tC...k1JSUN2RENDQWFT==
。
- 文字列を作成するには、ヘッダーを含めた証明書を
- 追加の証明書がある場合は、[Additional IDP certificate] フィールドに入力します。
- [ユーザー属性] フィールドに、各ユーザーを識別する属性を入力します。多くのプロバイダのデフォルトの属性は
sub
です。ID プロバイダによっては、email
やname
などの他の属性を選択できます。名前が競合しないように、email
以外の属性には、発行元の URL が先頭に付加されます。 - [グループ属性] フィールドに、ユーザーのグループ情報を保持する ID プロバイダ トークンの属性の名前を入力します。
- 省略可: ID プロバイダが GKE Identity Service を使用している場合は、[属性マッピング] 領域で [追加] をクリックし、ユーザーの追加属性(部門やプロフィール写真の URL など)の Key-Value ペアを入力します。
- [IDP certificate] フィールドに、ID プロバイダの base64 でエンコードされた PEM エンコード証明書を入力します。詳細については、https://en.wikipedia.org/wiki/Privacy-Enhanced_Mail をご覧ください。
[最初の管理者指定] セクションで、次の操作を行い、[次へ] をクリックします。
- 個々のユーザーまたはグループを初期管理者として追加するかどうかを選択します。
- [ユーザー名] フィールドに、組織へのアクセスに使用するユーザーまたはグループのメールアドレスを入力します。管理者の場合は、メールアドレス(例:
kiran@example.com
)を入力します。接頭辞は、myidp-kiran@example.com
のようにユーザー名の前に付加されます。
[Review] ページで、続行する前に各 ID 構成のすべての値を確認します。[戻る] をクリックして前のページに戻り、必要な修正を行います。すべての値を仕様に合わせて構成したら、[設定] をクリックします。