Ao operar uma aplicacao, voce inevitavelmente precisa armazenar informacoes sensiveis como senhas de banco de dados, chaves de API de servicos externos e tokens de autenticacao em algum lugar. Se voce escrever essas informacoes diretamente no codigo, elas podem ficar expostas para o mundo inteiro no momento em que forem enviadas ao GitHub. Vamos explorar como gerenciar isso com seguranca.
As perguntas do exame DVA-C02 nessa area focam em onde e como armazenar senhas e chaves de API.
AWS Secrets Manager
O AWS Secrets Manager e um servico que armazena com seguranca as informacoes sensiveis da sua aplicacao e as rotaciona automaticamente. Pense nele como um cofre de gerenciamento automatizado de segredos.
Funcao principal: Rotacao automatica Altera automaticamente as senhas do banco de dados conforme um calendario. Executa a logica de rotacao por meio de uma funcao Lambda. Diretamente integrado com RDS, Redshift e mais, tornando a rotacao de senhas de BD muito simples. Compartilhamento entre contas: Segredos podem ser compartilhados com seguranca com outras contas AWS. Custo: $0,40 por segredo por mes
AWS Systems Manager Parameter Store
O Parameter Store e onde se armazenam valores de configuracao da aplicacao e informacoes sensiveis. Pense nele como um deposito de configuracoes do app. Pode ser usado gratuitamente, tornando-o popular para armazenar configuracoes simples.
Dois niveis estao disponiveis: Standard: Gratis, ate 10.000 parametros, limite de tamanho de valor de 4KB Advanced: Pago, ate 100.000 parametros, valores de 8KB, politicas de parametros (datas de expiracao, etc.) suportadas
A hierarquia baseada em caminho permite gerenciar configuracoes por ambiente de forma organizada. /app/dev/db-url (endereco do BD em ambiente de desenvolvimento) /app/prod/db-url (endereco do BD em ambiente de producao)
Comparacao: Secrets Manager vs Parameter Store
| Recurso | Secrets Manager | Parameter Store | |---------|----------------|-----------------| | Rotacao automatica | Suportado (baseado em Lambda) | Nao suportado (implementacao manual necessaria) | | Custo | $0,40/segredo/mes | Parametros standard gratis | | Compartilhamento entre contas | Suportado | Nao suportado | | Integracao | Rotacao integrada com RDS/Redshift | Armazenamento geral de configuracao |
Escolha baseado nas suas necessidades: Precisa rotacionar automaticamente senhas de BD → Secrets Manager Armazenar valores de configuracao geral, minimizar custos → Parameter Store (Standard) Armazenar com seguranca variaveis de ambiente do Lambda → Parameter Store (SecureString)
!Secrets Manager vs Parameter Store
Seguranca de variaveis de ambiente do Lambda
Voce precisa tomar cuidado ao lidar com informacoes sensiveis em funcoes Lambda.
Abordagem incorreta: Escrever diretamente no codigo
Se fizer isso, sua senha fica publica no momento em que seu codigo e enviado ao Git.
Duas abordagens corretas: Usar KMS para criptografar diretamente as variaveis de ambiente do Lambda (pode ser configurado facilmente no console do Lambda) Recuperar segredos dinamicamente em runtime do Secrets Manager ou Parameter Store
Protecao de PII e PHI
PII (Informacoes de Identificacao Pessoal) sao quaisquer informacoes que podem identificar um individuo especifico. Isso inclui nomes, enderecos de email, numeros de telefone, numeros de seguridade social e dados similares. PHI (Informacoes de Saude Protegidas) sao informacoes sensiveis relacionadas a saude, como registros medicos de pacientes e informacoes de diagnostico.
Metodos de protecao: Mascaramento de dados: Mostrar apenas parte dos dados e ocultar o resto. Exemplo: 010-XXXX-5678 Sanitizacao de dados: Excluir completamente dados sensiveis que nao sao mais necessarios Amazon Macie: Um servico que encontra automaticamente PII em buckets S3, como um detector automatico de informacoes pessoais.
Pontos-chave do exame
"Rotacao automatica de senhas de BD" -- Secrets Manager
"Armazenamento de configuracao gratuito, uso geral" -- Parameter Store (Standard)
"Criptografar variaveis de ambiente do Lambda" -- KMS ou Parameter Store SecureString
"Evitar senhas hardcoded no codigo" -- Recuperacao em runtime do Secrets Manager ou Parameter Store
"Deteccao automatica de PII no S3" -- Amazon Macie
"Compartilhamento de segredos entre contas" -- Secrets Manager
Secrets Manager = rotacao automatica + pago, Parameter Store = gerenciamento manual + gratis