O Que É o GITHUB_TOKEN no GitHub Actions?
O GITHUB_TOKEN é uma credencial temporária que o GitHub cria para cada workflow run, permitindo que os steps se autentiquem na API do GitHub sem armazenar um secret.
A maioria dos workflows precisa se comunicar com o GitHub: postar um comentário, criar um release, enviar uma tag. O GITHUB_TOKEN fornece esse acesso automaticamente, restrito ao repositório e expirando quando o run termina.
O que é
Um token de instalação de curta duração gerado por run e exposto como secrets.GITHUB_TOKEN e como GH_TOKEN para a CLI. Ele está vinculado ao repositório e é revogado quando o job termina.
permissions:
contents: read
pull-requests: write
steps:
- run: gh pr comment "$NUMBER" --body "Built!"
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}Como funciona
O GitHub gera o token no início do run com as permissões definidas pela chave permissions:. Os steps o usam para autenticar chamadas de API; assim que o run termina, o token torna-se inválido.
Privilégio mínimo
As permissões padrão podem ser amplas, portanto defina permissions: explicitamente e conceda apenas o que cada job precisa. Isso limita o raio de impacto caso um step seja comprometido.
Por que isso importa
O GITHUB_TOKEN elimina a necessidade de criar e rotacionar personal access tokens para automação dentro do repositório. Ele é automático, restrito e efêmero, o que é o padrão seguro.
Conceitos relacionados
O GITHUB_TOKEN funciona junto com secrets de repositório e a chave permissions:; para acesso à cloud, OIDC é a alternativa preferida.
Principais conclusões
- O GITHUB_TOKEN é uma credencial de run de curta duração e gerada automaticamente.
- Seu escopo é definido pela chave
permissions:. - Ele expira quando o run termina; nenhuma rotação é necessária.