Políticas y configuraciones iniciales que deberán aplicarse en los servicios de secretos, KMS, WAF, logging, trazabilidad y control de acceso a la cuenta para garantizar la confidencialidad, integridad y disponibilidad de la información.

Política de Secretos (AWS Secrets Manager)

Gestión centralizada: Todos los secretos (contraseñas, tokens, credenciales de base de datos, llaves API) deben almacenarse en AWS Secrets Manager.

Rotación automática: Configurar rotación automática cada 90 días (o antes, según criticidad).

Principio de mínimo privilegio: Solo los roles y servicios que requieran acceso podrán leer los secretos.

Auditoría de accesos: Habilitar registro en CloudTrail para cada acceso a un secreto.

Versionamiento de secretos: Mantener historial de versiones para rollback rápido en caso de error.

Política de KMS (AWS Key Management Service)

Uso obligatorio de cifrado: Todos los datos en S3, DynamoDB, RDS Aurora y logs deben estar cifrados con claves gestionadas por KMS (CMKs).

Separación de claves: Crear claves diferentes para:

Datos de usuarios.

Datos de auditoría.

Secretos y credenciales.

Rotación de claves: Habilitar rotación automática anual en todas las CMKs.

Acceso controlado: Solo servicios y roles autorizados pueden usar claves para desencriptar.

Monitoreo de uso de claves: Activar métricas y alarmas en CloudWatch para accesos inusuales.

Política de WAF (AWS Web Application Firewall)

Implementación obligatoria: Todo tráfico expuesto en API Gateway y Amplify debe pasar por AWS WAF.

Reglas base recomendadas:

Bloqueo de inyecciones SQL (SQLi).

Protección contra ataques XSS.

Limitación de requests (Rate-based rule, p. ej. 2000 req/5min por IP).

Lista negra de IPs maliciosas (AWS Managed IP Reputation List).

Protección de endpoints críticos: Autenticación y endpoints financieros deben tener reglas adicionales más restrictivas.

Registro de tráfico: Habilitar logging en S3 para todos los accesos bloqueados y permitidos.

Logging y Trazabilidad

Centralización de logs: Todos los servicios (Lambdas, API Gateway, DynamoDB, Cognito) deben enviar logs a CloudWatch Logs.

Trazabilidad de usuarios:

  • Activar AWS X-Ray en API Gateway y Lambdas para trazabilidad de requests end-to-end.

  • Asociar cada request con el usuario autenticado en Cognito (UserId → TraceId).

Auditoría obligatoria:

  • Activar CloudTrail en todas las cuentas y regiones.

  • Configurar envío de logs a un bucket de S3 dedicado y cifrado con KMS.

Retención y archivado:

  • Logs de aplicación: retención mínima 90 días.

  • Logs de auditoría: retención mínima 1 año, con archivado en S3 Glacier.

Alertas proactivas:

  • Alarmas en CloudWatch para errores 5XX en API Gateway.

  • Alarmas por accesos no autorizados o fallidos en Cognito.

Política de Identidad y Acceso (AWS Identity Center y AWS Organizations)

Gestión centralizada de identidades mediante AWS Identity Center (antes SSO).

Acceso basado en roles:

  • Roles predefinidos para Administradores, Desarrolladores, Operaciones y Solo-Lectura.

  • Prohibido el uso compartido de credenciales raíz o IAM users permanentes.

Autenticación multifactor (MFA) obligatoria en todos los accesos.

Política de contraseñas: longitud mínima 12 caracteres, rotación cada 90 días.

AWS Organizations:

  • Uso de una estructura multi-cuenta (Producción, Pruebas, Desarrollo, Auditoría).

  • Aplicación de Service Control Policies (SCPs) para restringir servicios no autorizados.

  • Consolidación de facturación y control de gastos por unidad organizativa.