Skip to content
Latchkey

O Que É o AWS IAM? Identity and Access Management

O AWS IAM (Identity and Access Management) é o serviço que decide quem ou o que pode chamar qual API da AWS. Toda ação na AWS é permitida ou negada pelo IAM.

O IAM é a porta de entrada da sua conta AWS. Ele define principals (users, roles e services), as policies que concedem ou negam permissões, e as regras de como eles se autenticam. Entender o IAM é essencial porque um pipeline não consegue implantar nada na AWS até que o IAM o permita.

Os blocos de construção centrais do IAM

  • Users - identidades de longa duração para pessoas, com keys ou senhas.
  • Roles - identidades assumíveis com credenciais temporárias, ideais para workloads.
  • Policies - documentos JSON listando ações permitidas e negadas.
  • Groups - coleções de users que compartilham policies.

Policies e permissões

Uma policy se anexa a um principal e lista ações (como s3:PutObject) em recursos (como um bucket específico), com condições opcionais. O IAM é deny-by-default: nada é permitido a menos que uma policy conceda, e um deny explícito sempre vence.

Least privilege

O princípio norteador é o least privilege: conceda apenas as permissões que um principal realmente precisa. Policies amplas demais são um risco de segurança comum, então as deploy roles devem ter escopo restrito aos recursos e ações exatos que o pipeline toca.

Credenciais temporárias

Roles emitem credenciais de curta duração via STS em vez de keys permanentes. Isso é mais seguro porque as credenciais expiram automaticamente e nunca precisam ser armazenadas, o que é exatamente o que você quer para pipelines automatizados.

Papel no CI/CD

Um pipeline assume uma IAM role para obter credenciais temporárias, então implanta. O padrão moderno é o OIDC: o GitHub Actions apresenta um token assinado, o IAM confia nele, e devolve credenciais temporárias com escopo para uma deploy role. Isso remove completamente as chaves AWS de longa duração dos seus secrets.

Principais conclusões

  • O IAM controla toda ação da AWS via users, roles e policies.
  • O IAM é deny-by-default; least privilege mantém as deploy roles com escopo restrito.
  • Pipelines devem assumir roles para obter credenciais temporárias, idealmente através do OIDC.

Guias relacionados