Use Cedenciales Temporales

NOTA: Aún no se completó la actualización de la versión en español a v2, sugerimos usar la versión en Inglés por ahora.

Use credenciales temporales

Los usuarios de IAM y las claves de acceso son credenciales duraderas y de largo plazo. No se rotan hasta que alguien actúe para rotarlas. Estas credenciales pueden ser utilizadas por empleados recientemente despedidos, si no hay registro de que tengan (o sean los propietarios) de esas credenciales.

Estas credenciales presentan múltiples riesgos, por lo tanto, debemos evitar el uso de usuarios de IAM y claves de acceso siempre que sea posible y debemos esforzarnos por no usarlos en el futuro.

Use roles en su lugar: los roles brindan acceso temporal (incluye un token con límite de tiempo), lo que reduce el riesgo de vulneración. Si una instancia necesita acceder a recursos de AWS, no use claves de acceso, use perfiles de instancia de IAM (roles) en su lugar. Si es una función Lambda, use roles de ejecución Lambda. Si se trata de una tarea de Amazon ECS, utilice roles de IAM de ejecución de tareas de ECS, etc.

Los perfiles de instancia permitirán que el sistema operativo tenga credenciales para los recursos de AWS que la aplicación (o secuencia de comandos) puede aprovechar sin tener credenciales integradas:

Mapeo de recomendaciones de Well Architected Framework

Mitigación de riesgos

  • Las claves de acceso compartidas a través de correo electrónico o mensajería instantánea, como los canales de Slack, pueden verse comprometidas.
  • Los ex empleados pueden conservar el acceso a credenciales duraderas.
  • Si las claves de acceso se almacenan en el código, todos los que tienen acceso de lectura para revisar el código (como evaluadores/revisores) pueden obtener esas credenciales y usarlas fuera del código o vendérselas a adversarios.
  • Los desarrolladores pueden compartirlas con la comunidad de código abierto en repositorios abiertos como GitHub y las credenciales pueden quedar expuestas.
  • Los adversarios buscan credenciales como claves de acceso en repositorios abiertos.
  • Las claves de acceso codificadas son difíciles de rotar (particularmente importante en caso de un compromiso conocido donde necesita rotar inmediatamente, y si ambas claves de acceso de un usuario de IAM están en uso, la rotación probablemente causará interrupciones).
  • Estos riesgos también se aplican a los secretos almacenados en archivos de configuración en el mismo repositorio que el código.

Guía para evaluar su grado de alineación

  • ¿Está aprovechando roles (como perfiles de instancia EC2 o roles de ejecución Lambda) para el acceso temporal en sus aplicaciones? (¿Qué porcentaje de sus aplicaciones usa roles frente a credenciales duraderas?)
  • ¿Están sus desarrolladores capacitados para comprender que no deben almacenar secretos en el código?
  • ¿Está controlando que no se almacenen secretos en el código?
  • ¿Está aprovechando AWS Secrets Manager para almacenar y rotar secretos como las contraseñas de bases de datos?

Precios

https://aws.amazon.com/secrets-manager/pricing

Puede probar AWS Secrets Manager sin costo adicional con una prueba gratuita de 30 días. La prueba gratuita le permite rotar, administrar y recuperar datos confidenciales durante un período de 30 días.