A criação de políticas IAM sempre foi uma das tarefas mais demoradas no desenvolvimento de aplicações na AWS, exigindo que os desenvolvedores identificassem manualmente cada permissão necessária para chamadas de SDK e lidassem com dependências complexas entre serviços. Agora, a AWS lançou o IAM Policy Autopilot, uma ferramenta open source que automatiza esse processo por meio de análise estática de código, gerando as políticas exatas a partir do que o código realmente utiliza.

O problema invisível das políticas IAM

Por anos, engenheiros enfrentaram o desafio de mapear permissões precisas para serviços como Amazon S3 e AWS KMS, onde uma simples chamada de upload exigia não apenas s3:PutObject, mas também permissões de criptografia que só apareciam em erros de Access Denied durante os testes. O IAM Policy Autopilot surge exatamente para resolver esse gargalo, analisando o código-fonte em linguagens como Python, Go, TypeScript, JavaScript e Java para produzir políticas completas sem intervenção manual constante.

Como a ferramenta funciona na prática

Disponível no GitHub como projeto open source da AWS, o IAM Policy Autopilot opera de forma determinística: ele varre o código em busca de chamadas ao AWS SDK e gera as ações e recursos necessários, incluindo dependências automáticas entre serviços. Em um exemplo típico de função Lambda que faz upload para o S3 com criptografia KMS, a ferramenta produz não só a permissão de PutObject, mas também kms:Encrypt e kms:GenerateDataKey, além de permissões de CloudWatch Logs para a execução da função.

Além da geração inicial, o recurso de correção de erros permite colar uma mensagem de Access Denied e obter sugestões diretas de ajustes na política, transformando o que antes era depuração manual em um processo guiado. A integração como servidor MCP ainda permite que assistentes de codificação com IA, como o Kiro, invoquem a ferramenta automaticamente durante o desenvolvimento, sem que o programador precise interromper o fluxo para configurar permissões.

Instalação e uso imediato

Com pré-requisitos simples como Python 3, AWS CLI configurado e o gerenciador uv, a ferramenta pode ser executada diretamente via uvx sem instalação permanente. Um comando como iam-policy-autopilot generate-policies no arquivo de código TypeScript produz a política completa em JSON, com opção de refinamento posterior dos ARNs para seguir o princípio de menor privilégio, já que a análise estática não resolve variáveis de ambiente em tempo de execução.

Para cenários com nomes de métodos genéricos, a flag --service-hints ajuda a refinar os resultados, garantindo precisão em projetos maiores. Essa abordagem prática conecta a tradição de segurança rigorosa da AWS com as demandas modernas de desenvolvimento ágil assistido por IA.