开发人员用户和开发组是 TKG 服务 集群的目标用户。置备 TKG 服务 集群后,您可以使用 vCenter Single Sign-On 身份验证或受支持的外部身份提供程序向开发人员授予访问权限。
验证开发人员的身份
集群管理员可以向其他用户(如开发人员)授予集群访问权限。开发人员可以使用其用户帐户直接将 pod 到集群,也可以使用服务帐户间接部署。
- 对于用户帐户身份验证,TKG 服务 集群支持 vCenter Single Sign-On 用户和组。用户或组可以是 vCenter Server 的本地用户或组,也可以从受支持的目录服务器进行同步。
- 外部 OIDC 用户和组直接映射到 vSphere 命名空间 角色。
- 对于服务帐户身份验证,可以使用服务令牌。有关详细信息,请参见 Kubernetes 文档。
将开发人员用户添加到集群
要向开发人员授予集群访问权限,请执行以下操作:
- 为用户或组定义 Role 或 ClusterRole,并将其应用于集群。有关详细信息,请参见 Kubernetes 文档。
- 为用户或组创建 RoleBinding 或 ClusterRoleBinding,并将其应用于集群。请参见下面的示例。
示例 RoleBinding
要向
vCenter Single Sign-On 用户或组授予访问权限,RoleBinding 中的主题必须包含
name
参数的以下任一值。
字段 | 描述 |
---|---|
sso:USER-NAME@DOMAIN |
例如,本地用户名,如 sso:[email protected] 。 |
sso:GROUP-NAME@DOMAIN |
例如,与 vCenter Server 集成的目录服务器中的组名称,如 sso:[email protected] 。 |
以下示例 RoleBinding 将名为 Joe 的 vCenter Single Sign-On 本地用户绑定到名为 edit
的默认 ClusterRole。此角色允许对命名空间(在本例中为 default
命名空间)中的大多数对象进行读/写访问。
kind: RoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: name: rolebinding-cluster-user-joe namespace: default roleRef: kind: ClusterRole name: edit #Default ClusterRole apiGroup: rbac.authorization.k8s.io subjects: - kind: User name: sso:[email protected] #sso:<username>@<domain> apiGroup: rbac.authorization.k8s.io