Como Configurar Tokens de Acesso Pessoal do Git

GitGitBeginner
Pratique Agora

💡 Este tutorial foi traduzido do inglês com assistência de IA. Para ver o original, você pode mudar para a versão em inglês

Introdução

Neste tutorial, vamos guiá-lo através do processo de configuração de tokens de acesso pessoal (personal access tokens) do Git. Você aprenderá como gerar, proteger e gerenciar esses tokens, bem como entender sua importância no ecossistema Git. Ao final deste guia, você terá uma sólida compreensão de como usar tokens de acesso pessoal de forma eficaz para operações Git seguras.

gh auth login

Este Lab requer uma conexão com a internet para aprendizado, portanto, apenas usuários Pro podem iniciar a VM. Atualize sua conta para Pro.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL git(("Git")) -.-> git/SetupandConfigGroup(["Setup and Config"]) git(("Git")) -.-> git/GitHubIntegrationToolsGroup(["GitHub Integration Tools"]) git/SetupandConfigGroup -.-> git/config("Set Configurations") git/SetupandConfigGroup -.-> git/git("Show Version") git/GitHubIntegrationToolsGroup -.-> git/cli_config("Configure CLI") subgraph Lab Skills git/config -.-> lab-393036{{"Como Configurar Tokens de Acesso Pessoal do Git"}} git/git -.-> lab-393036{{"Como Configurar Tokens de Acesso Pessoal do Git"}} git/cli_config -.-> lab-393036{{"Como Configurar Tokens de Acesso Pessoal do Git"}} end

Compreendendo os Tokens de Acesso Pessoal do Git

Git é um sistema de controle de versão distribuído amplamente utilizado que permite aos desenvolvedores colaborar em projetos, rastrear alterações e gerenciar repositórios de código. Um aspecto essencial do uso eficaz do Git é a autenticação segura ao interagir com repositórios remotos.

O que são Tokens de Acesso Pessoal?

Tokens de Acesso Pessoal (PATs) são credenciais de autenticação que permitem que você acesse seus repositórios Git de forma segura sem usar seu nome de usuário e senha. Eles funcionam de forma semelhante às senhas, mas oferecem várias vantagens:

  1. Segurança Aprimorada: PATs podem ser revogados ou rotacionados sem alterar a senha principal da sua conta.
  2. Permissões Granulares: Você pode limitar as ações que um token pode realizar atribuindo escopos específicos.
  3. Suporte à Automação: PATs permitem acesso programático para scripts, pipelines CI/CD e outras ferramentas.
  4. Compatibilidade com Autenticação Multifator: PATs funcionam perfeitamente com contas que têm MFA habilitado.

Por que usar Tokens de Acesso Pessoal?

Muitas plataformas de hospedagem Git, incluindo GitHub, GitLab e Bitbucket, estão gradualmente eliminando a autenticação baseada em senha para operações Git. Essa transição é motivada principalmente por preocupações de segurança. Os Tokens de Acesso Pessoal fornecem uma alternativa mais segura que reduz o risco associado a credenciais de longo prazo e amplo acesso.

Quando você usa um token de acesso pessoal em vez de uma senha:

  • Você pode limitar as capacidades do token apenas ao que é necessário
  • Você pode criar vários tokens para diferentes propósitos
  • Você pode revogar tokens individuais sem afetar outros
  • Você mantém melhores trilhas de auditoria de acesso e uso

Nos passos seguintes, criaremos um token de acesso pessoal e configuraremos o Git para usá-lo para autenticação.

Gerando um Token de Acesso Pessoal no GitHub

Nesta etapa, geraremos um Token de Acesso Pessoal no GitHub. O processo é semelhante em outras plataformas Git, como GitLab ou Bitbucket, com pequenas diferenças na interface do usuário.

Criando um Token no GitHub

Siga estas etapas para gerar seu token de acesso pessoal:

  1. Abra um terminal e instale a ferramenta CLI do GitHub, que fornece uma maneira conveniente de interagir com o GitHub:

    sudo apt-get update
    sudo apt-get install -y gh
  2. Autentique-se com o GitHub executando:

    gh auth login
    gh auth login

    Siga os prompts interativos:

    • Selecione "GitHub.com" quando perguntado sobre a conta
    • Escolha "HTTPS" para seu protocolo preferido
    • Confirme que você deseja autenticar com suas credenciais do GitHub
    • Escolha "Login with a web browser" (Entrar com um navegador da web) quando solicitado o método de autenticação

    Um código único será exibido. O GitHub abrirá em seu navegador, ou você será solicitado a visitar uma URL e inserir este código.

  3. Após a autenticação bem-sucedida, gere um novo token de acesso pessoal:

    gh auth token

    Este comando exibirá seu token de autenticação atual. Copie este token e salve-o em um local seguro, pois precisaremos dele nas próximas etapas.

    Se você preferir criar um token com escopos específicos diretamente, você pode usar:

    gh auth refresh -s repo,read:org
    gh auth token

    Isso cria um token com acesso de leitura ao repositório e à organização.

  4. Alternativamente, você pode gerar um token diretamente do site do GitHub:

    gh auth login
    • Visite o GitHub em https://github.com
    • Clique na sua foto de perfil no canto superior direito
    • Selecione "Settings" (Configurações)
    • Role para baixo e clique em "Developer settings" (Configurações do desenvolvedor) na barra lateral esquerda
    • Clique em "Personal access tokens" (Tokens de acesso pessoal) e depois em "Tokens (classic)" (Tokens (clássico))
    • Clique em "Generate new token" (Gerar novo token) e selecione "Generate new token (classic)" (Gerar novo token (clássico))
    • Dê ao seu token um nome descritivo como "Git CLI access" (Acesso Git CLI)
    • Selecione os escopos apropriados (no mínimo, selecione "repo" para acesso ao repositório)
    • Clique em "Generate token" (Gerar token)
    • Copie o token gerado e salve-o com segurança

Lembre-se de armazenar seu token em um local seguro, pois o GitHub só o mostrará uma vez. Se você perdê-lo, precisará gerar um novo.

Configurando o Git para Usar Seu Token de Acesso Pessoal

Agora que você gerou um token de acesso pessoal, você precisa configurar o Git para usá-lo para autenticação ao interagir com repositórios remotos. Existem vários métodos para conseguir isso.

Método 1: Usando o Auxiliar de Credenciais do Git

O auxiliar de credenciais do Git permite que o Git se lembre de suas credenciais, para que você não precise inseri-las toda vez.

  1. Abra um terminal e navegue até o diretório do seu projeto:

    cd ~/project
  2. Configure o Git para usar o auxiliar de credenciais para armazenar suas credenciais:

    git config --global credential.helper store

    Observação: Isso armazenará suas credenciais não criptografadas em seu disco. Para uma opção mais segura, você pode usar o auxiliar de cache em vez disso, que armazena as credenciais temporariamente na memória:

    git config --global credential.helper 'cache --timeout=3600'

    Isso armazenará suas credenciais na memória por 1 hora (3600 segundos).

  3. Crie um repositório Git de exemplo para testar sua configuração:

    mkdir -p ~/project/test-repo
    cd ~/project/test-repo
    git init
  4. Adicione um repositório remoto (você precisará substituir pelo seu nome de usuário real do GitHub):

    git remote add origin https://github.com/yourusername/test-repo.git
  5. Na próxima vez que o Git exigir autenticação (por exemplo, ao enviar ou puxar), você será solicitado a inserir suas credenciais. Forneça seu nome de usuário do GitHub e use seu token de acesso pessoal como senha.

Método 2: Usando Autenticação Baseada em URL

Outra abordagem é incorporar seu token diretamente na URL do repositório:

  1. No diretório do seu projeto, configure a URL do repositório remoto com seu token:

    git remote set-url origin https://[email protected]/yourusername/test-repo.git

    Substitua YOUR_TOKEN pelo seu token de acesso pessoal real e yourusername pelo seu nome de usuário do GitHub.

  2. Crie um arquivo de teste para verificar a configuração:

    echo "## Test Repository" > README.md
    git add README.md
    git commit -m "Initial commit"

Método 3: Usando o Arquivo de Configuração do Git

Você também pode editar diretamente o arquivo de configuração do Git:

  1. Crie ou edite o arquivo .git/config em seu repositório:

    nano ~/project/test-repo/.git/config
  2. Atualize a URL para o remoto origin para incluir seu token:

    [remote "origin"]
        url = https://[email protected]/yourusername/test-repo.git
        fetch = +refs/heads/*:refs/remotes/origin/*

    Substitua YOUR_TOKEN pelo seu token de acesso pessoal real e yourusername pelo seu nome de usuário do GitHub.

  3. Salve o arquivo pressionando Ctrl+O, depois Enter, e saia com Ctrl+X.

Por razões de segurança, o método do auxiliar de credenciais (Método 1) é geralmente recomendado para a maioria dos usuários, pois evita armazenar seu token diretamente em arquivos de configuração.

Testando Seu Token de Acesso Pessoal

Depois de configurar o Git para usar seu token de acesso pessoal, é importante verificar se a autenticação funciona corretamente. Nesta etapa, testaremos o token realizando operações Git comuns.

Criando um Repositório de Teste no GitHub

Primeiro, vamos criar um repositório de teste no GitHub usando a CLI do GitHub:

  1. Crie um novo repositório no GitHub:

    cd ~/project
    gh repo create test-pat-repo --private --clone
    cd test-pat-repo

    Este comando cria um novo repositório privado chamado "test-pat-repo" e o clona para sua máquina local.

Testando Operações Git Básicas

Agora, vamos realizar algumas operações Git básicas para garantir que seu token de acesso pessoal esteja funcionando corretamente:

  1. Crie um arquivo README simples:

    echo "## Test PAT Repository" > README.md
    echo "This repository is used to test Personal Access Token configuration." >> README.md
  2. Adicione e faça o commit do arquivo:

    git add README.md
    git commit -m "Add README file"
  3. Envie as alterações para o GitHub:

    git push -u origin main

    Se seu token de acesso pessoal estiver configurado corretamente, o push deve ser bem-sucedido sem solicitar uma senha. Se você estiver usando o auxiliar de credenciais e este for seu primeiro push, poderá ser solicitado seu nome de usuário e token, que serão armazenados para uso futuro.

  4. Faça outra alteração para verificar as credenciais armazenadas:

    echo "### Additional Information" >> README.md
    echo "This section contains additional information about the repository." >> README.md
    git add README.md
    git commit -m "Update README with additional information"
    git push

    Este segundo push deve prosseguir sem nenhum prompt de autenticação, confirmando que seu token está sendo usado corretamente.

Verificando o Acesso ao Repositório

Para confirmar ainda mais que seu token está funcionando corretamente, você pode listar seus repositórios:

gh repo list --limit 5

Este comando deve exibir uma lista de seus repositórios do GitHub, incluindo o repositório de teste que acabamos de criar. Se este comando for executado com sucesso, ele confirma que seu token de acesso pessoal tem as permissões corretas para acesso ao repositório.

Se você encontrar algum problema durante esses testes, verifique novamente a configuração do seu token e certifique-se de que o token tenha os escopos (permissões) necessários para as operações que você está tentando realizar.

Gerenciando e Rotacionando Seus Tokens de Acesso Pessoal

Tokens de acesso pessoal devem ser tratados com o mesmo nível de cuidado que senhas. Nesta etapa final, discutiremos as melhores práticas para gerenciar e rotacionar seus tokens para manter a segurança.

Listando Seus Tokens de Acesso Pessoal

Para visualizar seus tokens de acesso pessoal existentes no GitHub:

  1. Usando a CLI do GitHub:

    gh auth status

    Este comando exibe informações sobre seu status de autenticação atual, incluindo o token em uso.

  2. Alternativamente, você pode visualizar todos os seus tokens através da interface web do GitHub:

    • Vá para GitHub.com e faça login
    • Clique na sua foto de perfil no canto superior direito
    • Selecione "Settings" (Configurações)
    • Navegue até "Developer settings" (Configurações do desenvolvedor) > "Personal access tokens" (Tokens de acesso pessoal) > "Tokens (classic)" (Tokens (clássico))

Melhores Práticas de Segurança de Tokens

Para manter a segurança de seus tokens de acesso pessoal, siga estas melhores práticas:

  1. Limitar escopos de token: Conceda apenas as permissões mínimas necessárias para o uso pretendido do token.

  2. Usar nomes descritivos: Dê aos seus tokens nomes significativos que indiquem sua finalidade e uso.

  3. Definir datas de expiração: Para tokens não críticos, defina uma data de expiração para impor a rotação regular.

    Para criar um token com uma data de expiração usando a CLI do GitHub:

    gh auth refresh -s repo,read:org --expiry 30d
    gh auth token

    Isso cria um token que expira em 30 dias.

  4. Auditar tokens regularmente: Revise periodicamente seus tokens e revogue qualquer um que não seja mais necessário.

  5. Armazenar tokens com segurança: Nunca armazene tokens em repositórios públicos, arquivos não criptografados ou compartilhe-os com outras pessoas.

  6. Usar variáveis de ambiente: Ao usar tokens em scripts ou aplicativos, armazene-os como variáveis de ambiente em vez de codificá-los diretamente.

    Por exemplo:

    export GITHUB_TOKEN=your_token_here

Revogando um Token de Acesso Pessoal

Se você suspeitar que um token foi comprometido ou não é mais necessário, revogue-o imediatamente:

  1. Usando a CLI do GitHub (substitua TOKEN pelo seu token):

    gh auth logout

    Isso desconecta você e invalida o token atual.

  2. Através da interface web do GitHub:

    • Vá para GitHub.com e faça login
    • Navegue até "Settings" (Configurações) > "Developer settings" (Configurações do desenvolvedor) > "Personal access tokens" (Tokens de acesso pessoal) > "Tokens (classic)" (Tokens (clássico))
    • Encontre o token que você deseja revogar
    • Clique em "Delete" (Excluir) e confirme a ação

Rotacionando Seus Tokens

A rotação regular de tokens é uma boa prática de segurança. Veja como rotacionar seus tokens:

  1. Gere um novo token com as mesmas permissões do antigo.
  2. Atualize seus aplicativos e configurações para usar o novo token.
  3. Teste se tudo funciona com o novo token.
  4. Revogue o token antigo.

Para processos automatizados, considere usar variáveis de ambiente ou cofres seguros para armazenar tokens, facilitando a rotação.

## Generate a new token
gh auth refresh -s repo,read:org
NEW_TOKEN=$(gh auth token)

## Update your Git remote URL with the new token
git remote set-url origin https://${NEW_TOKEN}@github.com/yourusername/your-repo.git

## Verify it works
git fetch

## Revoke the old token through GitHub website
echo "Remember to revoke your old token in GitHub settings"

Ao seguir estas melhores práticas, você pode manter o acesso seguro aos seus repositórios Git, minimizando o risco de acesso não autorizado.

Resumo

Neste tutorial, você aprendeu como trabalhar com tokens de acesso pessoal do Git de forma eficaz. Aqui está um resumo do que você realizou:

  1. Entendeu a importância e os benefícios de usar tokens de acesso pessoal para autenticação Git
  2. Gerou um token de acesso pessoal no GitHub usando a CLI e a interface web
  3. Configurou o Git para usar seu token de acesso pessoal para operações de repositório
  4. Testou a configuração do seu token realizando operações Git básicas
  5. Aprendeu as melhores práticas para gerenciar, proteger e rotacionar seus tokens

Ao usar tokens de acesso pessoal em vez de senhas, você aprimorou a segurança do seu fluxo de trabalho Git. Agora você pode criar tokens com permissões específicas, limitar sua vida útil e revogá-los quando necessário, sem afetar as credenciais da sua conta principal.

Lembre-se destes pontos-chave:

  • Sempre use as permissões mínimas necessárias para seus tokens
  • Armazene os tokens com segurança e nunca os compartilhe
  • Rotacione os tokens regularmente, especialmente para repositórios sensíveis
  • Revogue os tokens não utilizados ou comprometidos imediatamente

Com essas práticas em vigor, você pode manter o acesso seguro aos seus repositórios Git, minimizando os riscos de segurança.

OSZAR »