Skip to content
Latchkey

O Que É Workload Identity Federation? Auth de Nuvem sem Chaves

O Workload Identity Federation permite que uma workload externa (como uma execução do GitHub Actions) troque seu próprio token de identidade por credenciais GCP de curta duração, sem chaves armazenadas.

O federation resolve no GCP o mesmo problema que as roles OIDC resolvem na AWS: parar de armazenar chaves de nuvem de longa duração no CI. Com o Workload Identity Federation, o GCP confia em um provedor de identidade externo, aceita um token assinado do seu pipeline e devolve credenciais temporárias para impersonar uma service account.

Como a troca funciona

Você configura um workload identity pool e um provider que confiam em um issuer externo (por exemplo o OIDC do GitHub). O pipeline apresenta seu token; o GCP o valida, checa condições de atributos e emite credenciais de curta duração atreladas a uma service account.

O que você configura

  • Um workload identity pool para conter identidades externas.
  • Um provider que confia no issuer externo (GitHub, etc.).
  • Mapeamentos e condições de atributos para definir quais tokens são aceitos.
  • Uma service account que a identidade federada pode impersonar.

Definindo o acesso de forma estreita

As condições do provider podem exigir repositórios, branches ou outros claims de token específicos, de modo que apenas os workflows pretendidos possam autenticar. Isso estreita o raio de impacto do mesmo jeito que uma trust policy OIDC da AWS.

Por que isso importa

Sem chave baixável, não há nada para vazar ou rotacionar. As credenciais são de curta duração e auditáveis, e o acesso é vinculado a claims verificáveis sobre a execução. É a forma recomendada de autenticar qualquer sistema externo no GCP.

Papel no CI/CD

O GitHub Actions concede id-token: write e usa o step oficial google-github-actions/auth com o pool e a service account. A action troca o token do GitHub por credenciais GCP, e os steps posteriores fazem deploy no Cloud Run, GKE ou Artifact Registry sem nenhuma chave JSON nos seus secrets.

Principais conclusões

  • O federation troca um token externo por credenciais GCP de curta duração, sem chaves.
  • Você define quais repos e branches são confiáveis via condições do provider.
  • É o equivalente no GCP de uma role OIDC da AWS para CI/CD.

Guias relacionados