このセクションのトピックでは、スタンドアローン管理クラスタを使用して、Tanzu Kubernetes Grid (TKG) で ID およびアクセス管理を構成する方法について説明します。
ID およびアクセス管理を有効にして構成するには、次のリンク先のトピックに従います。
Tanzu Kubernetes Grid (TKG) は Pinniped を使用して、ID およびアクセス管理の認証と認可を実装します。
Tanzu Kubernetes Grid は、Kubernetes クラスタのオープンソース認証サービスである Pinniped を使用してユーザー認証を実装します。Pinniped を使用すると、外部 OpenID Connect (OIDC) または LDAP ID プロバイダ (IdP) をワークロード クラスタに接続して、それらのクラスタへのユーザー アクセスを制御できます。ID 管理を有効にすると、Pinniped は管理クラスタ内のクラスタ内サービスとして自動的に実行されます。Tanzu Kubernetes Grid で ID 管理を有効にする方法については、「ID 管理の構成」を参照してください。
管理クラスタとワークロード クラスタ間の認証フローには、次のことが含まれます。
kubeconfig
をユーザーに提供します。kubeconfig
を使用してワークロード クラスタに接続します。たとえば、kubectl get pods --kubeconfig
を実行します。kubectl get pods
要求を許可または拒否します。次の図では、青い矢印が、ワークロード クラスタ、管理クラスタ、および外部 IdP 間の認証フローを表しています。緑色の矢印は、ワークロード クラスタ、管理クラスタ、外部 IdP 間での Tanzu CLI と kubectl
のトラフィックを表しています。
次の図は、ID 管理を有効にしたときに、Tanzu Kubernetes Grid によって管理クラスタとワークロード クラスタに展開される ID 管理のコンポーネントを示しています。
図について:
青緑色の四角形は、ID 管理のコンポーネント(管理クラスタ内の Pinniped と展開後ジョブ、およびワークロード クラスタ内の Pinniped と展開後ジョブ)を示しています。
濃い青色の四角形は、Tanzu Kubernetes Grid が ID 管理のコンポーネントのライフサイクルを制御するために使用するコンポーネント(tanzu-addons-manager
および kapp-controller
)を示しています。
明るい緑の四角形は、管理クラスタ用に作成された Pinniped アドオン シークレットを示しています。
管理クラスタ内のオレンジ色の四角形は、ワークロード クラスタ用に作成された Pinniped アドオン シークレットを示しています。シークレットはワークロード クラスタにミラーリングされます。
内部的には、Tanzu Kubernetes Grid は ID 管理のコンポーネントを自動管理パッケージ pinniped
として展開します。このパッケージには、pinniped
アドオンが含まれています。ID 管理が有効になっている管理クラスタを展開するか、展開後の手順として ID 管理を有効にすると、Tanzu CLI が管理クラスタ内に pinniped
アドオンの Kubernetes シークレットを作成します。tanzu-addons-manager
は IdP 構成情報を含むシークレットを読み取り、シークレットからの構成情報を使用して pinniped
アドオンを構成するように kapp-controller
に指示します。
Tanzu CLI は、管理クラスタから展開するワークロード クラスタごとに、個別の pinniped
アドオン シークレットを作成します。すべてのシークレットは管理クラスタに保存されます。詳細については、「自動管理パッケージ」を参照してください。
Tanzu Kubernetes Grid は、ロールベースのアクセス制御 (RBAC) 認可を使用します。RBAC の構成方法については、「RBAC の構成」を参照してください。