Aviso: trate os tokens de acesso como uma senha. Para obter mais informações, confira "Como manter seus personal access token seguros".
Sobre os personal access tokens
Os Personal access token são uma alternativa ao uso de senhas para autenticação no GitHub ao usar a API do GitHub ou a linha de comando.
Os Personal access tokens são usados para acessar recursos do GitHub em nome de si mesmo. Para acessar recursos em nome de uma organização ou para integrações de longa duração, você deve usar um GitHub App. Para obter mais informações, confira "Sobre a criação de Aplicativos do GitHub".
Um token tem os mesmos recursos para acessar recursos e executar ações nesses recursos que o proprietário do token e é ainda mais limitado por quaisquer escopos ou permissões concedidos ao token. Um token não pode conceder recursos de acesso adicionais a um usuário. Por exemplo, um personal access token pode ser configurado com um escopo admin:org
, mas se o proprietário do token não for o proprietário da organização, o token não concederá acesso administrativo à organização.
Tipos de personal access token
No momento, o GitHub dá suporte a dois tipos de personal access tokens: fine-grained personal access tokens e personal access tokens (classic). O GitHub recomenda que você use fine-grained personal access tokens em vez de personal access tokens (classic) sempre que possível.
Tanto fine-grained personal access tokens quanto personal access tokens (classic) estão vinculados ao usuário que os gerou e ficarão inativos se o usuário perder o acesso ao recurso.
Os proprietários da organização podem definir uma política para restringir o acesso do personal access tokens (classic) à organização. Para obter mais informações, confira "Como configurar uma política de token de acesso pessoal para a organização".
Fine-grained personal access token
os Fine-grained personal access tokens têm várias vantagens de segurança em relação aos personal access tokens (classic):
- Cada token só pode acessar recursos pertencentes a um usuário ou uma organização.
- Cada token só pode acessar repositórios específicos.
- Cada token recebe permissões específicas, que oferecem mais controle do que os escopos concedidos a personal access tokens (classic).
- Os proprietários da organização podem exigir aprovação para fine-grained personal access tokens que possam acessar recursos na organização.
Personal access tokens (classic)
Personal access tokens (classic) são menos seguros. Entretanto, alguns recursos só funcionam com personal access tokens (classic):
- Somente personal access tokens (classic) têm acesso de gravação para repositórios públicos que não pertencem a você ou a uma organização da qual você não é membro.
- Os colaboradores externos só podem usar personal access tokens (classic) para acessar repositórios da organização nos quais são colaboradores.
- Alguns Pontos de Extremidade de API REST só estão disponíveis com um personal access tokens (classic). Para determinar se um ponto de extremidade também oferece suporte a fine-grained personal access tokens, confira a documentação correspondente ou veja “Pontos de extremidade disponíveis para tokens de acesso pessoal refinados”.
Se você optar por usar um personal access token (classic), tenha em mente que ele concederá acesso a todos os repositórios dentro das organizações às quais você tem acesso, bem como a todos os repositórios pessoais em sua conta pessoal.
Como precaução de segurança, o GitHub remove automaticamente os personal access token que não são usados há um ano. Para fornecer segurança adicional, recomendamos fortemente adicionar uma validade aos personal access tokens.
Mantendo seus personal access token seguros
Os Personal access token são como senhas e compartilham os mesmos riscos inerentes à segurança. Antes de criar um personal access token, considere se há um método mais seguro de autenticação disponível para você:
- Para acessar o GitHub por meio da linha de comando, você pode usar GitHub CLI ou o Gerenciador de Credenciais do Git em vez de criar um personal access token.
- Ao usar um personal access token em um fluxo de trabalho do GitHub Actions, considere se você pode usar o
GITHUB_TOKEN
interno. Para obter mais informações, confira "Autenticação automática de token".
Se essas opções não forem possíveis e você precisar criar um personal access token, considere o uso de outro serviço de CLI para armazenar seu token com segurança.
Ao usar um personal access token em um script, você pode armazenar o token como um segredo e executar o script por meio do GitHub Actions. Para obter mais informações, confira "Usar segredos em ações do GitHub". Você também pode armazenar o token como um segredo do Codespaces e executar o script no Codespaces. Para obter mais informações, confira "Gerenciando segredos específicos da sua conta para o GitHub Codespaces".
Para obter mais informações sobre as melhores práticas, confira "Manter suas credenciais de API seguras".
Como criar um fine-grained personal access token
Observação: Fine-grained personal access token estão atualmente em versão prévia pública e sujeitos a alterações. Para deixar comentários, confira a discussão de comentários.
-
Verifique seu endereço de email, caso ele ainda não tenha sido verificado. 1. No canto superior direito de qualquer página do GitHub, clique sua foto de perfil e, em seguida, clique em Configurações.
-
Na barra lateral esquerda, clique em Configurações do desenvolvedor.
-
Na barra lateral esquerda, em Personal access tokens, clique em Tokens refinados.
-
Clique em Gerar novo token.
-
Em Nome do token, insira um nome para ele.
-
Em Validade, selecione uma validade para o token. Vida útil infinita é permitida, mas pode ser bloqueada por uma política de vida útil máxima definida pela sua organização ou pelo proprietário da empresa. Para obter mais informações, consulte "Aplicar uma política de vida útil máxima para personal access tokens".
-
Opcionalmente, em Descrição, adicione uma observação para descrever a finalidade do token.
-
Em Proprietário do recurso, selecione um proprietário de recurso. O token só poderá acessar recursos pertencentes ao proprietário do recurso selecionado. As organizações das quais você é membro não aparecerão, a menos que a organização aceite o fine-grained personal access tokens. Para obter mais informações, confira "Como configurar uma política de token de acesso pessoal para a organização".
-
Opcionalmente, se o proprietário do recurso for uma organização que requer aprovação para fine-grained personal access tokens, abaixo do proprietário do recurso, na caixa, insira uma justificativa para a solicitação.
-
Em Acesso ao repositório, selecione quais repositórios você deseja que o token acesse. Você deve escolher o acesso mínimo ao repositório que atenda às suas necessidades. Os tokens sempre incluem acesso somente leitura a todos os repositórios públicos no GitHub.
-
Se você selecionou Selecionar somente repositórios na etapa anterior, na lista suspensa Repositórios selecionados , selecione os repositórios que você deseja que o token acesse.
-
Em Permissões, selecione quais permissões quer conceder o token. Dependendo do proprietário do recurso e do acesso do repositório especificados, haverá permissões de repositório, organização e conta. Você deve escolher as permissões mínimas para suas necessidades.
O documento de referência da API REST para cada ponto de extremidade indica se o ponto de extremidade funciona com fine-grained personal access tokens, e declara quais permissões são necessárias para que o token use o ponto de extremidade. Alguns pontos de extremidade podem exigir várias permissões e alguns pontos de extremidade podem exigir uma de várias permissões. Para obter uma visão geral de quais pontos de extremidade da API REST um fine-grained personal access token pode ter acesso ao usar cada permissão, confira “Permissões necessárias para tokens de acesso pessoal refinados”.
-
Clique em Gerar token.
Se você selecionou uma organização como o proprietário do recurso e a organização requer aprovação para fine-grained personal access tokens, o token será marcado como pending
até que seja revisado por um administrador da organização. O token poderá ler apenas recursos públicos até que seja aprovado. Se você for um proprietário da organização, a solicitação será aprovada automaticamente. Para obter mais informações, confira "Revisar e revogar tokens de acesso pessoal na organização".
Como criar um personal access token (classic)
Observação: os proprietários da organização podem restringir o acesso do personal access token (classic) à organização. Se você tentar usar um personal access token (classic) para acessar recursos em uma organização que desabilitou o acesso ao personal access token (classic), sua solicitação falhará com uma resposta 403. Nesse caso, use um GitHub App, um OAuth app ou um fine-grained personal access token.
Observação: o personal access token (classic) pode acessar todos os repositórios que você pode acessar. O GitHub recomenda que você use fine-grained personal access tokens, que pode restringir a repositórios específicos. Os Fine-grained personal access tokens também permitem que você especifique permissões refinadas em vez de escopos amplos.
-
Verifique seu endereço de email, caso ele ainda não tenha sido verificado. 1. No canto superior direito de qualquer página do GitHub, clique sua foto de perfil e, em seguida, clique em Configurações.
-
Na barra lateral esquerda, clique em Configurações do desenvolvedor.
-
Na barra lateral esquerda, em Personal access tokens, clique em Tokens (clássico).
-
Selecione Gerar novo token e clique em Gerar novo token (clássico).
-
No campo "Observação", dê um nome descritivo ao token.
-
Para dar uma validade ao token, selecione Validade e escolha uma opção padrão ou clique em Personalizado para inserir uma data.
-
Selecione os escopos ou as permissões que deseja conceder a esse token. Para usar o token para acessar os repositórios na linha de comando, selecione repositório. Um token com nenhum escopo atribuído só pode acessar informações públicas. Para obter mais informações, confira "Escopos para aplicativos OAuth".
-
Clique em Gerar token.
-
Opcionalmente, para copiar o novo token para a área de transferência, clique em .
-
Se quiser usar o token para acessar recursos pertencentes a uma organização que usa o logon único de SAML, autorize o token. Para obter mais informações, confira "Autorizar o uso de um token de acesso pessoal para uso com logon único SAML" na documentação do GitHub Enterprise Cloud.
Excluir um personal access token
Você deverá excluir um personal access token se ele não for mais necessário. Se você excluir um personal access token usado para criar uma chave de implantação, a chave de implantação também será excluída.
- No canto superior direito de qualquer página do GitHub, clique sua foto de perfil e, em seguida, clique em Configurações.
- Na barra lateral esquerda, clique em Configurações do desenvolvedor.
- Na barra lateral esquerda, em Personal access tokens, clique em Tokens refinados ou Tokens (clássico), dependendo do tipo de personal access token que você gostaria de excluir.
- À direita do personal access token que você deseja excluir, clique em Excluir.
Como usar um personal access token na linha de comando
Se você tem um personal access token, é possível inseri-lo em vez de sua senha ao realizar operações Git em HTTPS.
Por exemplo, para clonar um repositório na linha de comando, insira o comando git clone
a seguir. Você será solicitado a inserir seu nome de usuário e senha. Quando solicitado a fornecer sua senha, insira seus dados do personal access token em vez de uma senha.
$ git clone https://github.com/USERNAME/REPO.git
Username: YOUR-USERNAME
Password: YOUR-PERSONAL-ACCESS-TOKEN
Os Personal access tokens só podem ser usados para operações HTTP do Git. Se o repositório usar uma URL remota SSH, você precisará alternar o repositório remoto de SSH para HTTPS.
Se não for solicitado a informar seu nome de usuário e a senha, suas credenciais poderão ser armazenadas em cache no seu computador. Você pode atualizar suas credenciais no conjunto de chaves para substituir sua senha antiga pelo token.
Em vez de inserir manualmente os dados do personal access token para cada operação HTTPS do Git, você pode armazenar em cache os dados do personal access token com um cliente Git. O Git irá armazenar temporariamente as suas credenciais na memória até que um intervalo de expiração tenha passado. Você também pode armazenar o token em um arquivo de texto simples que o Git pode ler antes de cada solicitação. Para obter mais informações, confira "Armazenar suas credenciais do GitHub no Git".