GKE Identity Service を使用すると、既存の ID プロバイダを統合して、Google Distributed Cloud クラスタに対するユーザーの認証を行うことができます。ユーザーは、OpenID Connect(OIDC)または Lightweight Directory Access Protocol(LDAP)を使用してコマンドラインから Kubernetes API サーバーに接続できます。また、OIDC を使用して Google Cloud コンソールから接続することもできます。
このサービスは、管理者、ユーザー、ハイブリッド、スタンドアロンの各クラスタをサポートし、Active Directory フェデレーション サービス(ADFS)などのオンプレミス システムや Okta などのパブリック プロバイダに接続します。組織で Google アカウントを使用している場合は、Connect Gateway を使用してクラスタ アクセスを管理します。
アーキテクチャの概要
GKE Identity Service は、クラスタ コントロール プレーン内の Pod として実行されます。クラスタのライフサイクル フェーズでは、すべての受信リクエストの認証 Webhook としてクラスタ内 GKE Identity Service を使用するように API サーバーが動的に構成されます。API サーバーはクラスタ内 DNS を使用できません。その結果、API サーバーは REST リソース アクセスとして GKE Identity Service にアクセスするように構成されます。監査ログでは、この呼び出しは system:anonymous ユーザーによる Service またはプロキシ リソースへの CREATE リクエストとして記録されます。
始める前に
ユーザーに同意を求め、ユーザー アカウントを認可するには、ブラウザベースの認証フローが使用されます。ヘッドレス システムはサポートされていません。
Google Cloud コンソールで認証するには、構成する各クラスタをプロジェクト フリートに登録する必要があります。
設定手順とオプション
GKE Identity Service では、次のプロトコルを使用する ID プロバイダをサポートします。
OpenID Connect(OIDC)。ここでは、Microsoft を含む一部の一般的な OpenID プロバイダに関する特定の設定手順を説明しますが、OIDC を実装する任意のプロバイダを使用できます。
Lightweight Directory Access Protocol(LDAP)。GKE Identity Service では、Active Directory または LDAP サーバーで LDAP を使用して認証を行うことができます。
OIDC
GKE Identity Service のプロバイダの構成の手順に沿って、GKE Identity Service をクライアントとして OIDC プロバイダに登録します。
次のクラスタ構成オプションから選択します。
(推奨)フリートレベルの GKE Identity Service 用にクラスタを構成するの手順に沿って、フリートレベルでクラスタを構成します。このオプションを使用すると、認証構成は Google Cloudで一元管理されます。
OIDC による GKE Identity Service 用のクラスタを構成するの手順に沿って、クラスタを個別に構成します。
GKE Identity Service のユーザー アクセスを設定するの手順に沿って、クラスタへのユーザー アクセス(ロールベース アクセス制御(RBAC)を含む)を設定します。
LDAP
LDAP の使用を開始するには、LDAP を使用して GKE Identity Service を設定するの手順に沿って操作します。
クラスタにアクセスする
GKE Identity Service が設定されると、ユーザーはコマンドラインまたは Google Cloud コンソールを使用して、構成済みのクラスタにログインできます。
(推奨)OIDC または LDAP ID を使用して登録済みクラスタにログインする方法については、GKE Identity Service を使用したクラスタへのアクセスをご覧ください。
Google Cloud コンソールからクラスタにログインする方法については、Google Cloud コンソールからクラスタを操作するをご覧ください(OIDC の場合のみ)。
ログインフローのトラブルシューティング
完全修飾ドメイン名(FQDN)を使用して GKE Identity Service サーバーで直接認証するログインフローのトラブルシューティングを行うには、GKE Identity Service 診断ユーティリティを使用します。診断ユーティリティは、OIDC プロバイダを使用してログインフローをシミュレートし、構成の問題を迅速に特定します。このツールにはバージョン 1.32 以降のクラスタが必要で、OIDC のみをサポートしています。詳細については、GKE Identity Service 診断ユーティリティをご覧ください。