Postagens

Mostrando postagens com o rótulo IAM

Variáveis de Ambiente no Lambda: Configuração, Acesso e Criptografia com KMS

Você tem um endpoint de banco de dados que precisa chegar até a função Lambda — hardcodar isso no código é o caminho mais rápido para um vazamento de credencial em um repositório público. Variáveis de ambiente no Lambda resolvem esse problema, e quando combinadas com KMS, você adiciona uma camada de criptografia que vai além do padrão gerenciado pela AWS. TL;DR — Variáveis de Ambiente no Lambda Ponto Detalhe Onde configurar Console, CLI ( --environment ), IaC (CloudFormation/SAM/Terraform) Criptografia padrão AWS gerencia com chave própria (aws/lambda) — transparente, sem custo adicional de KMS Criptografia customizada Você fornece uma CMK do KMS; Lambda criptografa em repouso e você descriptografa em runtime Acesso no código process.env.NOME (Node.js), os.environ['NOME'] (Python) Limite de tamanho 4 KB total para todas as variáveis — verifique a documentação oficial para limites atuais ...

Loop Infinito entre Lambda e S3: Como Evitar o Gatilho Recursivo

Você configura uma função Lambda para processar arquivos enviados a um bucket S3 e salvar o resultado no mesmo bucket — parece razoável até o momento em que a função começa a se chamar recursivamente, consumindo invocações em escala exponencial e gerando uma conta inesperada no final do mês. Esse padrão de loop infinito entre Lambda e S3 é um dos erros operacionais mais comuns em arquiteturas orientadas a eventos na AWS. TL;DR — Resumo do Problema e Soluções Situação Causa Solução Recomendada Lambda salva no mesmo bucket que dispara o gatilho Notificação S3 re-aciona a função Usar bucket separado para saída Bucket único é obrigatório por requisito Prefixo de saída não filtrado Filtrar por prefixo de entrada no gatilho Prefixo não resolve (ex: transformação no mesmo prefixo) Filtro insuficiente Usar tag de metadado no objeto ou verificação lógica no código Loop já em execução Invocações acumuladas na fila...

Diferença entre IAM User e IAM Role na AWS: Quando Usar Cada Um

Se você já tentou configurar uma aplicação rodando em EC2 para acessar o S3 e ficou em dúvida entre criar um IAM User com chaves de acesso ou anexar uma IAM Role, você não está sozinho — essa é uma das confusões mais comuns em ambientes AWS e a escolha errada deixa credenciais estáticas expostas em código ou variáveis de ambiente por meses sem ninguém perceber. TL;DR: IAM User vs IAM Role Característica IAM User IAM Role Identidade Pessoa ou sistema fixo Identidade assumível temporariamente Credenciais Access Key + Secret (estáticas) Credenciais temporárias via STS Rotação Manual, propensa a esquecimento Automática (gerenciada pela AWS) Uso em EC2 Não recomendado Recomendado (Instance Profile) MFA Suportado Suportado (ao assumir a role) Auditoria Por usuário Por sessão de role (com contexto) Como IAM User e IAM Role Funcionam na Prática Um IAM User representa uma identidade permanente den...

S3 Access Denied: Por que 'Bloquear Acesso Público' impede seu objeto mesmo após torná-lo público

Você fez upload de uma imagem no S3, marcou o objeto como público, copiou a URL e abriu no navegador — e recebeu um 403 Access Denied . A configuração de ACL do objeto está correta, mas o acesso público continua bloqueado. O culpado quase sempre é o Block Public Access no nível do bucket, uma camada de controle que opera acima das ACLs e políticas de objeto e que muita gente ignora até levar o primeiro 403 em produção. TL;DR — S3 Access Denied com objeto público Camada O que controla O que verificar Block Public Access (bucket) Bloqueia ACLs e políticas públicas no bucket inteiro aws s3api get-public-access-block --bucket NOME ACL do objeto Permissão pública no objeto individual aws s3api get-object-acl --bucket NOME --key CHAVE Bucket Policy Permissões baseadas em política no bucket aws s3api get-bucket-policy --bucket NOME Object Ownership Controla se ACLs são respeitadas ou ignoradas aws s3api get-buc...