Skip to content
Latchkey

O Que É uma Service Account?

Uma service account é uma identidade que pertence a um sistema em vez de a uma pessoa - a conta como a qual seu pipeline de CI se autentica quando faz deploy ou chama APIs.

A automação precisa de uma identidade. Reutilizar as credenciais de uma pessoa real é arriscado e quebra quando ela sai. Uma service account é uma identidade não humana dedicada a uma carga de trabalho, com suas próprias permissões e credenciais escopadas ao que essa carga de trabalho faz.

Service account vs conta de usuário

Uma conta de usuário representa uma pessoa e está atrelada a esse humano. Uma service account representa um programa - um pipeline de CI, um job de deploy - e pertence ao time, não a um indivíduo, então sobrevive a mudanças de equipe.

Como o CI usa uma

O pipeline se autentica como a service account (idealmente via OIDC, senão via uma chave) e atua dentro das permissões dessa conta. Escope essas permissões às necessidades reais do pipeline.

Um pequeno exemplo

Um pipeline de deploy impersona uma service account ci-deployer que pode atualizar um serviço e ler um secret - nada mais. Se o pipeline for comprometido, o atacante herda apenas esse acesso restrito, não o de um admin humano.

Protegendo service accounts

  • Aplique least privilege - conceda apenas o que a carga de trabalho exige.
  • Prefira autenticação sem chaves (OIDC / federation) em vez de chaves de longa duração.
  • Audite o uso e faça rotação de quaisquer chaves regularmente.

Uma conta por finalidade

Dê a cada pipeline ou environment sua própria service account em vez de compartilhar uma. Identidades separadas facilitam escopar, auditar e revogar acesso sem afetar cargas de trabalho não relacionadas.

Principais conclusões

  • Uma service account é uma identidade não humana usada por automações.
  • Ela pertence a um time, não a uma pessoa, então sobrevive a mudanças de equipe.
  • Proteja-a com least privilege e autenticação sem chaves.

Guias relacionados