Os usuários e grupos de desenvolvimento do desenvolvedor são os usuários de destino dos clusters TKG 2 em Supervisor. Depois que um cluster do TKG 2 for provisionado, você poderá conceder acesso ao desenvolvedor usando a autenticação vCenter Single Sign-On ou um provedor de identidade externo.

Autenticação para desenvolvedores

Um administrador de cluster pode conceder acesso de cluster a outros usuários, como desenvolvedores. Os desenvolvedores podem implantar pods em clusters diretamente usando suas contas de usuário ou indiretamente usando contas de serviço.
  • Para autenticação de conta de usuário, os clusters TKG oferecem suporte a vCenter Single Sign-On usuários e grupos. O usuário ou grupo pode ser local para o vCenter Server ou sincronizado a partir de um servidor de diretório compatível.
  • Os usuários e grupos externos do OIDC são mapeados diretamente para funções vSphere Namespace.
  • Para a autenticação da conta de serviço, você pode usar tokens de serviço. Para obter mais informações, consulte a documentação do Kubernetes.

Adição de usuários desenvolvedores a um cluster

Para conceder acesso ao cluster aos desenvolvedores:
  1. Defina uma Função ou ClusterRole para o usuário ou grupo e aplique-a ao cluster. Para obter mais informações, consulte a documentação do Kubernetes.
  2. Crie um RoleBinding ou ClusterRoleBinding para o usuário ou grupo e aplique-o ao cluster. Consulte o exemplo a seguir.

Exemplo RoleBinding

Para conceder acesso a um usuário ou grupo vCenter Single Sign-On, o assunto no RoleBinding deve conter um dos seguintes valores para o parâmetro name.
Tabela 1. Campos de usuário e grupo compatíveis
Campo Descrição
sso:USER-NAME@DOMAIN Por exemplo, um nome de usuário local, como sso:[email protected].
sso:GROUP-NAME@DOMAIN Por exemplo, um nome de grupo de um servidor de diretório integrado ao vCenter Server, como sso:[email protected].

O seguinte exemplo de RoleBinding associa o usuário local vCenter Single Sign-On chamado Joe ao ClusterRole padrão chamado edit. Essa função permite acesso de leitura/gravação à maioria dos objetos em um namespace, neste caso, o namespace 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