vSphere 管理者には、スーパーバイザー を有効にして構成する権限、および vSphere 名前空間 を管理する権限が必要です。名前空間の権限を定義して、どの DevOps エンジニアと開発者が名前空間にアクセスできるかを決定します。また、外部 OpenID Connect (OIDC) プロバイダを使用して スーパーバイザー を構成し、多要素認証を有効にすることもできます。DevOps エンジニアまたは開発者は、vSphere 管理者が スーパーバイザー で構成した内容に応じて、vCenter Single Sign-On の認証情報または OIDC プロバイダからの認証情報を使用して スーパーバイザー で認証します。権限を持つ vSphere 名前空間 にのみアクセスできます。

サポートされている ID プロバイダ

vSphere IaaS control plane は、次の ID プロバイダをサポートしています。

  • vCenter Single Sign-OnスーパーバイザーTanzu Kubernetes Grid クラスタを含む、vSphere IaaS control plane 環境での認証に使用するデフォルトの ID プロバイダです。vCenter Single Sign-On は、vSphere インフラストラクチャに認証を提供し、AD/LDAP システムと統合できます。vCenter Single Sign-On の詳細については、vCenter Single Sign-On による vSphere 認証を参照してください。
  • 外部 ID プロバイダ。vSphere 管理者は、OpenID Connect プロトコルをサポートする外部 ID プロバイダを使用して スーパーバイザー を構成できます。外部 ID プロバイダが構成されている スーパーバイザー は OAuth 2.0 クライアントとして機能し、Pinniped 認証サービスを使用して、Tanzu CLI 経由で Tanzu Kubernetes Grid クラスタに接続します。Tanzu CLI は、Tanzu Kubernetes Grid クラスタのライフサイクルのプロビジョニングと管理をサポートします。各 スーパーバイザー インスタンスは、外部 ID プロバイダを 1 つのみサポートします。

スーパーバイザー での認証

vSphere IaaS control plane を操作するさまざまなロールは、次の方法を使用して スーパーバイザー で認証できます。

  • vSphere 管理者。vSphere 管理者は、vCenter Single Sign-On を使用して、vSphere Client を介して vSphere で認証します。kubectl 向けの vSphere プラグイン を使用して、kubectl を介して スーパーバイザーTanzu Kubernetes Grid クラスタで認証することもできます。詳細については、「vCenter Single Sign-On ユーザーとしてスーパーバイザーに接続する」を参照してください。
  • DevOps エンジニアまたは開発者。DevOps エンジニアまたは開発者は、vCenter Single Sign-On を使用して、kubectl 向けの vSphere プラグインkubectl を介して スーパーバイザー で認証します。スーパーバイザー が構成されている外部 ID プロバイダの認証情報を使用して、スーパーバイザー に接続することもできます。詳細については、「外部 ID プロバイダを使用したスーパーバイザー上の TKG クラスタへの接続」を参照してください。

スーパーバイザー を使用したログイン セッション

スーパーバイザーvCenter Single Sign-On ユーザーとしてログインすると、認証プロキシによって要求が vCenter Single Sign-On にリダイレクトされます。kubectl 向けの vSphere プラグイン は、vCenter Server とのセッションを確立し、vCenter Single Sign-On から認証トークンを取得します。また、アクセスできる vSphere 名前空間 のリストを取得し、これらの vSphere 名前空間 を構成にポピュレートします。ユーザー アカウントの権限に変更があった場合は、次回ログイン時に vSphere 名前空間 のリストが更新されます。

スーパーバイザー にログインする際に使用するアカウントでアクセスできるのは、自分に割り当てられている vSphere 名前空間 のみです。 vCenter Server にログインするには、vSphere 管理者が 1 つ以上の vSphere 名前空間 でアカウントに適切な権限を設定する必要があります。
注: kubectl へのセッションは 10 時間継続します。セッションの期限が切れると、 スーパーバイザー で再度認証する必要があります。ログアウト時にトークンはユーザー アカウントの構成ファイルから削除されますが、セッションが終了するまで有効なままです。

Tanzu Kubernetes Grid クラスタを使用した認証

DevOps エンジニアまたは開発者は、プロビジョニングされた Tanzu Kubernetes Grid クラスタに接続して、それらを運用および管理します。Tanzu Kubernetes Grid クラスタがプロビジョニングされている vSphere 名前空間 に対する編集権限または所有者権限がユーザー アカウントに付与されると、そのアカウントが cluster-admin ロールに割り当てられます。または、kubernetes-admin ユーザーを使用して、Tanzu Kubernetes Grid に接続することもできます。ユーザーまたはグループをデフォルトまたはカスタムのポッド セキュリティ ポリシーにバインドすることにより、開発者に Tanzu Kubernetes Grid クラスタへのアクセス権を付与することもできます。詳細については、「vCenter SSO 認証を使用したスーパーバイザー上の TKG クラスタへの接続」および「外部 ID プロバイダを使用したスーパーバイザー上の TKG クラスタへの接続」を参照してください。

vSphere 名前空間 ロールの権限

vSphere 管理者は、vSphere 名前空間 で DevOps エンジニアまたは開発者に表示、編集、所有者権限を付与します。ユーザーまたはグループは、vCenter Single Sign-On または スーパーバイザー が構成されている外部 ID プロバイダで使用できる必要があります。1 つのユーザーまたはグループで複数の vSphere 名前空間 にアクセスできます。各 vSphere 名前空間 ロールには、次のアクションが許可されます。

ロール 説明
表示可能 ユーザーまたはグループの読み取り専用アクセス。ユーザーまたはグループは、スーパーバイザー 制御プレーンにログインして、vSphere 名前空間 で実行されているワークロード(vSphere ポッドTanzu Kubernetes Grid クラスタ、仮想マシンなど)を一覧表示できます。
編集可能 ユーザーまたはグループは、vSphere ポッドTanzu Kubernetes Grid クラスタ、仮想マシンを作成、読み取り、更新、および削除できます。管理者グループに属するユーザーには、スーパーバイザー 内のすべての名前空間に対する編集権限があります。
所有者 所有者権限を持つユーザーまたはグループは、次の操作を実行できます。
  • vSphere 名前空間 でワークロードをデプロイおよび管理する。
  • vSphere 名前空間 を他のユーザーまたはグループと共有する。
  • kubectl を使用して追加の vSphere 名前空間 を作成および削除する。所有者権限を持つユーザーは名前空間を共有する場合、表示、編集、または所有者権限を他のユーザーまたはグループに割り当てることができます。
注: 所有者ロールは、 vCenter Single Sign-On で使用可能なユーザーに対してサポートされます。外部 ID プロバイダからのユーザーまたはグループで所有者ロールを使用することはできません。

vSphere 名前空間 の作成と構成の詳細については、「vSphere 名前空間の作成と構成」を参照してください。

vSphere 管理者は、ロールの権限、リソースの割り当て、およびストレージを使用して vSphere 名前空間 を構成したら、スーパーバイザー 制御プレーンの URL を DevOps エンジニアまたは開発者に提供します。DevOps エンジニアまたは開発者はその URL を使用して制御プレーンにログインできます。ログインすると、DevOps エンジニアまたは開発者は、vCenter Server システムに属する、同じ ID プロバイダで構成されている スーパーバイザー で、権限を持つ vSphere 名前空間 にアクセスできます。vCenter Server システムが拡張リンク モードになっている場合、DevOps エンジニアまたは開発者は、リンク モード グループで使用可能なすべての スーパーバイザー 内の、権限を持つすべての vSphere 名前空間 にアクセスできます。スーパーバイザー 制御プレーンの IP アドレスは、NSX またはロード バランサ(Distributed Switch ネットワークの場合)によって生成される仮想 IP アドレスで、スーパーバイザー 制御プレーンへのアクセス ポイントとして機能します。

vSphere 管理者の権限

通常、vSphere 管理者はユーザー アカウントに次の権限を付与できます。
オブジェクト 権限
vCenter Single Sign-On ユーザー 管理者グループ
vSphere 名前空間 ユーザー 管理者グループのメンバーには、すべての vSphere 名前空間 に対する編集権限が付与されます。
vSphere IaaS control plane の操作に使用するインターフェイスに応じて、付与された権限に基づくさまざまな操作を実行できます。
インターフェイス 操作
vSphere Client vSphere Client に管理者としてログインすると、次の操作を実行できます。
  • スーパーバイザー を有効にして構成する。
  • DevOps エンジニアまたは開発者のリソースの割り当てとロールの権限を使用して、vSphere 名前空間 を作成および構成する。vSphere 名前空間 のロールの権限は、kubectl を使用して スーパーバイザー 制御プレーンにログインしてワークロードの管理を実行するユーザーまたはグループに必要です。
  • スーパーバイザー 上の スーパーバイザー サービス をデプロイおよび管理する。
kubectl vCenter Single Sign-On 管理者アカウントを使用して スーパーバイザー 制御プレーンにログインすると、次の操作を実行できます。
  • システムの vSphere 名前空間(kube-system およびすべての vmware-system-* 名前空間)を含むすべての vSphere 名前空間 内のリソースを表示する。
  • システム以外のすべての vSphere 名前空間vSphere Client または vCenter Server API を使用して作成された名前空間)内のリソースを編集する。

ただし、管理者グループのアカウント部分を使用して スーパーバイザー 制御プレーンにログインした場合、クラスタレベルのリソースの編集、kubectl を使用した vSphere 名前空間 の作成、ロール バインドの作成は許可されません。リソース割り当ての設定、vSphere 名前空間 の作成と構成、ユーザー権限の設定を行うには、vSphere Client をプライマリ インターフェイスとして使用する必要があります。

DevOps エンジニアと開発者の権限

通常、DevOps エンジニアまたは開発者のユーザー アカウントには次の権限が必要です。
オブジェクト 権限
vSphere 名前空間 編集または所有者
vCenter Single Sign-On ユーザー なし、または読み取り専用

DevOps エンジニアまたは開発者は、vSphere IaaS control plane を操作するためのプライマリ インターフェイスとして kubectl を使用します。自身に割り当てられている vSphere 名前空間 でワークロードを表示、実行、および管理するには、kubectl 向けの vSphere プラグイン を使用して スーパーバイザー 制御プレーンにログインできる必要があります。そのため、ユーザー アカウントには、1 つ以上の vSphere 名前空間 に対する編集または所有者の権限が必要です。

通常、スーパーバイザー に対して管理操作を実行する場合、vSphere Client を使用する必要はありません。ただし、場合によっては、vSphere Client にログインして、アカウントに割り当てられている vSphere 名前空間 内のリソースとワークロードを表示することができます。このために、vSphere に対する読み取り専用権限が必要になる場合があります。

vSphere 名前空間 の権限

vSphere 名前空間の権限は、 vSphere IaaS control plane の操作方法を制御します。権限は、階層内の異なるレベルで設定できます。たとえば、フォルダ レベルで権限を設定した場合、その権限をフォルダ内の 1 つ以上のオブジェクトに伝達できます。[必要とするオブジェクト] 列に示されるオブジェクトには、直接または継承のいずれか方法で権限が設定されている必要があります。
vSphere Client での権限名 説明 必要とするオブジェクト API での権限名
ディスクの廃止操作を許可 データ ストアの運用を終了できるようにします。

データストア

Namespaces.ManageDisks
ワークロード コンポーネント ファイルのバックアップ etcd クラスタのコンテンツをバックアップできるようにします(VMware Cloud on AWS でのみ使用)。

クラスタ

Namespaces.Backup
アクセス可能な名前空間の一覧表示 アクセス可能な vSphere 名前空間 を一覧表示できます。

クラスタ

Namespaces.ListAccess
クラスタ全体の構成の変更

スーパーバイザー の構成の変更、および vSphere 名前空間 の作成と削除を行うことができます。

クラスタ

Namespaces.ManageCapabilities
クラスタ全体での名前空間のセルフサービス構成の変更 vSphere 名前空間 のセルフサービス構成を変更できます。

クラスタ

(アクティブ化および非アクティブ化用)

テンプレート

(構成の変更用)

vCenter Server

(テンプレートの作成用)
Namespaces.SelfServiceManage
名前空間構成の変更

vSphere 名前空間 の構成オプション(リソースの割り当て、ユーザーの権限、コンテンツ ライブラリの関連付けなど)を変更できます。

クラスタ

Namespaces.Manage
クラスタ機能の切り替え クラスタ スーパーバイザー の機能の状態を操作できます(VMware Cloud on AWS でのみ内部で使用)。

クラスタ

なし
クラスタを新しいバージョンにアップグレード スーパーバイザー のアップグレードを開始できます。

クラスタ

Namespaces.Upgrade

スーパーバイザー サービス の権限

スーパーバイザー サービス の権限は、vSphere IaaS control plane 環境で スーパーバイザー サービス を作成および管理できるユーザーを制御します。

表 1. スーパーバイザー サービス の権限
vSphere Client での権限名 説明 必要とするオブジェクト API での権限名
スーパーバイザー サービスの管理 スーパーバイザー サービス を作成、更新、または削除できるようにします。また、スーパーバイザー への スーパーバイザー サービス のインストール、および スーパーバイザー サービス バージョンの作成または削除を許可します。

クラスタ

SupervisorServices.Manage

仮想マシン クラスの権限

仮想マシン クラスの権限は、vSphere 名前空間 で仮想マシン クラスを追加および削除できるユーザーを制御します。

表 2. 仮想マシン クラスの権限
vSphere Client での権限名 説明 必要とするオブジェクト API での権限名
仮想マシン クラスの管理

スーパーバイザー 上の vSphere 名前空間 で仮想マシン クラスを管理できます。

クラスタ

VirtualMachineClasses.Manage

ストレージ ビュー権限

ストレージ ビュー権限を使用すると、vCenter Server でストレージ ポリシーを表示して、vSphere 名前空間 に割り当てることができます。

表 3. ストレージ ビュー権限
vSphere Client での権限名 説明 必要とするオブジェクト API での権限名
サービスの構成

権限のあるユーザーに対してすべてのストレージ監視サービス API の使用を許可します。読み取り専用のストレージ監視サービス API に対する権限では、ストレージ ビュー.表示 を使用します。

ルート vCenter Server

StorageViews.ConfigureService
表示

権限のあるユーザーに対して読み取り専用のストレージ監視サービス API の使用を許可します。

ルート vCenter Server

StorageViews.View