このドキュメントでは、Google Kubernetes Engine に対してプログラムで認証する方法について説明します。Google Kubernetes Engine に対する認証方法は、API へのアクセスに使用するインターフェースと、コードが実行されている環境によって異なります。
GKE API を使用すると、GKE クラスタやノードなど、Kubernetes を実行する Google Cloud インフラストラクチャを操作できます。Pod や Service などの Kubernetes オブジェクトを操作するには、Kubernetes API に対して認証する必要があります。Kubernetes API は、GKE API とは別のもので、各クラスタの Kubernetes API サーバーから提供されます。手順については、Kubernetes API サーバーに対する認証をご覧ください。
GKE で実行されているワークロードから Cloud Storage バケットなどの他の Google Cloud リソースにアクセスするには、GKE 用 Workload Identity 連携を使用します。
Google Cloud の認証の詳細については、認証の概要をご覧ください。
API アクセス
GKE は、プログラムによるアクセスをサポートしています。次の方法で API にアクセスできます。
クライアント ライブラリ
GKE クライアント ライブラリでは、プログラムでの GKE に対する認証のための高度な言語サポートが提供されています。Google Cloud APIs の呼び出しを認証するために、クライアント ライブラリではアプリケーションのデフォルト認証情報(ADC)がサポートされています。このライブラリは、一連の定義済みのロケーションの中から認証情報を探し、その認証情報を使用して API へのリクエストを認証します。ADC を使用すると、アプリケーション コードを変更することなく、ローカルでの開発や本番環境など、さまざまな環境のアプリケーションで認証情報を使用できるようになります。
Google Cloud CLI
gcloud CLI を使用して GKE にアクセスする場合は、gcloud CLI コマンドで使用される認証情報を提供するユーザー アカウントで gcloud CLI にログインします。
組織のセキュリティ ポリシーによってユーザー アカウントに必要な権限が与えられない場合は、サービス アカウントの権限借用を使用できます。
詳細については、gcloud CLI を使用して認証するをご覧ください。GKE で gcloud CLI を使用する詳しい方法については、gcloud CLI のリファレンス ページをご覧ください。
REST
GKE API に対する認証には、gcloud CLI 認証情報を使用するか、アプリケーションのデフォルト認証情報を使用します。REST リクエストの認証の詳細については、REST を使用して認証するをご覧ください。認証情報の種類については、gcloud CLI の認証情報と ADC の認証情報をご覧ください。
次のステップ
- Kubernetes API サーバーに対して認証を行う。
- 外部 ID プロバイダを使用して GKE に対する認証を行う。
- GKE 用 Workload Identity 連携を使用して GKE から Google Cloud APIs に対する認証を行う。
- GKE と Kubernetes でのアクセス制御について学習する。
- GKE API と Kubernetes API について学習する。
- Google Cloud の認証方法を確認する。
- 認証のユースケースを確認する。