|
Este documento foi traduzido usando tecnologia de tradução automática de máquina. Sempre trabalhamos para apresentar traduções precisas, mas não oferecemos nenhuma garantia em relação à integridade, precisão ou confiabilidade do conteúdo traduzido. Em caso de qualquer discrepância, a versão original em inglês prevalecerá e constituirá o texto official. |
Usando Tokens de API
|
Deprecation of v3 API tokens
Rancher v2.13 introduced a new token resource in the Starting with Rancher v2.14.1:
|
O Rancher v2.8.0 introduziu a API Kubernetes do Rancher que pode ser usada para gerenciar recursos do Rancher através de kubectl. Esta página cobre informações sobre tokens de API usados com o Rancher CLI, arquivos kubeconfig, Terraform e o navegador da API v3.
Por padrão, alguns tokens de API em nível de cluster são gerados com tempo de vida infinito (ttl=0). Em outras palavras, tokens de API com ttl=0 nunca expiram, a menos que você os invalide. Tokens não são invalidados ao alterar uma senha.
Você pode desativar tokens de API excluindo-os ou desativando a conta do usuário.
Excluindo tokens
Para excluir um token:
-
Vá para a lista de todos os tokens na visualização da API do Rancher em
https://<Rancher-Server-IP>/v3/tokens. -
Acesse o token que você deseja excluir pelo seu ID. Por exemplo,
https://<Rancher-Server-IP>/v3/tokens/kubectl-shell-user-vqkqt -
Clique em Excluir.
A seguir está uma lista completa de tokens gerados com ttl=0:
| Token | Descrição |
|---|---|
|
Acesso ao shell |
|
Token para implantação de agente |
|
Token para composição |
|
Token para implantação de gráfico Helm |
|
Token para drain (o Rancher usa |
Definindo TTL em tokens Kubeconfig
Os administradores podem definir um tempo de vida global (TTL) para os tokens Kubeconfig. Alterar o TTL padrão do kubeconfig pode ser feito navegando até as configurações globais e definindo kubeconfig-default-token-ttl-minutes para a duração desejada em minutos. A partir do Rancher v2.8, o valor padrão de kubeconfig-default-token-ttl-minutes é 43200, o que significa que os tokens expiram em 30 dias.
|
Essa configuração é usada por todos os tokens kubeconfig, exceto aqueles criados pela CLI para gerar tokens kubeconfig. |
Desativar tokens em Kubeconfigs Gerados
Defina a configuração kubeconfig-generate-token para false. Essa configuração instrui o Rancher a não gerar mais automaticamente um token quando um usuário clica em baixar um arquivo kubeconfig. Quando essa configuração está desativada, um kubeconfig gerado referencia o Rancher CLI para recuperar um token de curta duração para o cluster. Quando esse kubeconfig é usado em um cliente, como kubectl, o Rancher CLI precisa ser instalado para completar a solicitação de login.
Hashing de token
Você pode habilitar o hashing de token, onde os tokens passam por um hash unidirecional usando o algoritmo SHA256. Este é um processo não reversível: uma vez habilitado, esse recurso não pode ser desativado. Você deve primeiro avaliar essa configuração em um ambiente de teste e/ou fazer backups antes de habilitar.
Este recurso afeta todos os tokens que incluem, mas não se limitam a, os seguintes:
-
Tokens de kubeconfig
-
Tokens Bearer, chaves/chamadas da API
-
Tokens usados por operações internas
Configurações de token
Essas configurações globais afetam o comportamento do token do Rancher.
| Configuração | Descrição |
|---|---|
TTL em minutos para um token de sessão de autenticação de usuário. |
|
TTL em minutos para um token de sessão de autenticação de usuário, sem atividade do usuário. |
|
TTL padrão aplicado a todos os tokens de kubeconfig, exceto para tokens gerados pelo Rancher CLI. |
|
TTL máximo para todos os tokens, exceto aqueles controlados por |
|
Se verdadeiro, gera automaticamente tokens quando um usuário baixa um kubeconfig. |
auth-user-session-ttl-minutes
Duração do tempo de vida (TTL) em minutos, usada para determinar quando um token de sessão de autenticação de usuário expira. Quando expirar, o usuário deve fazer login e obter um novo token. Esta configuração não é afetada por auth-token-max-ttl-minutes. Tokens de sessão são criados quando um usuário faz login no Rancher.
auth-user-session-idle-ttl-minutes
Duração do tempo de vida (TTL) sem atividade do usuário para tokens de sessão de login, em minutos.
Por padrão, auth-user-session-idle-ttl-minutes é definido com o mesmo valor que auth-user-session-ttl-minutes (para compatibilidade retroativa). Nunca deve exceder o valor de auth-user-session-ttl-minutes.
kubeconfig-default-token-ttl-minutes
Duração do tempo de vida (TTL) em minutos, usada para determinar quando um token kubeconfig expira. Quando o token expira, a API rejeita o token. Esta configuração não pode ser maior que auth-token-max-ttl-minutes. Esta configuração se aplica a tokens gerados em um arquivo kubeconfig solicitado, exceto para tokens gerados pelo Rancher CLI. A partir do Rancher v2.8, a duração padrão é 43200, o que significa que os tokens expiram em 30 dias.
auth-token-max-ttl-minutes
Tempo máximo de vida (TTL) em minutos permitido para tokens de autenticação. Se um usuário tentar criar um token com um TTL maior que auth-token-max-ttl-minutes, o Rancher define o TTL do token para o valor de auth-token-max-ttl-minutes. Aplica-se a todos os tokens kubeconfig e tokens de API. A partir do Rancher v2.8, a duração padrão é 129600, o que significa que os tokens expiram em 90 dias.
kubeconfig-generate-token
Quando verdadeiro, os kubeconfigs solicitados através da interface contêm um token válido. Quando falso, os kubeconfigs contêm um comando que usa o Rancher CLI para solicitar que o usuário faça login. O CLI então recupera e armazena em cache um token para o usuário. cli/kubectl.adoc#_authentication_with_kubectl_and_kubeconfig_tokens_with_ttl[O CLI então recupera e armazena em cache um token para o usuário].