SEC02-BP02 Usar credenciales temporales - AWS Well-Architected Framework

SEC02-BP02 Usar credenciales temporales

Exija identidades para adquirir dinámicamente credenciales temporales. Para las identidades de la fuerza de trabajo, utilice AWS IAM Identity Center o la federación con roles de AWS Identity and Access Management (IAM) para acceder a Cuentas de AWS. Para las identidades de máquinas, como las instancias de Amazon Elastic Compute Cloud (Amazon EC2) o las funciones AWS Lambda, se requiere el uso de roles de IAM en lugar del de usuarios de IAM con claves de acceso a largo plazo.

Para las identidades humanas que utilicen la AWS Management Console, se requiere que los usuarios adquieran credenciales temporales y se federen en AWS. Puede hacer esto utilizando el portal de usuarios de AWS IAM Identity Center. Para usuarios que requieran acceso a la CLI, asegúrese de que usen la AWS CLI v2, que es compatible con la integración directa con IAM Identity Center. Los usuarios pueden crear perfiles de la CLI vinculados con cuentas y roles de IAM Identity Center. La CLI recupera automáticamente credenciales de AWS de IAM Identity Center y las actualiza en su nombre. Esto elimina la necesidad de copiar y pegar credenciales temporales de AWS desde la consola de IAM Identity Center. Para el SDK, los usuarios deben confiar en que AWS Security Token Service (AWS STS) asuma roles para recibir credenciales temporales. En determinados casos, las credenciales temporales podrían no resultar prácticas. Debe ser consciente de los riesgos de almacenar claves de acceso, rotarlas con frecuencia y exigir la autenticación multifactor (MFA) como condición siempre que sea posible. Use la información a la que se haya accedido por última vez para determinar cuándo rotar o eliminar claves de acceso.

En los casos en los que necesite conceder a los consumidores acceso a sus recursos de AWS, utilice grupos de identidades de Amazon Cognito y asígneles un conjunto de credenciales temporales con privilegios limitados para acceder a sus recursos de AWS. Los permisos para cada usuario se controlan mediante roles de IAM que cree. Puede definir reglas para elegir el rol para cada usuario en función de las reclamaciones del token de ID del usuario. Puede definir un rol predeterminado para los usuarios autenticados. También puede definir un rol de IAM separado con permisos limitados para los usuarios invitados que no se hayan autenticado.

Para las identidades de máquinas, debe recurrir a los roles de IAM para que concedan acceso a AWS. Para las instancias de Amazon Elastic Compute Cloud (Amazon EC2), puede usar roles para Amazon EC2. Puede asociar un rol de IAM a su instancia Amazon EC2 para permitir que las aplicaciones que se ejecuten en Amazon EC2 usen credenciales de seguridad temporales que AWS crea, distribuye y rota automáticamente mediante el servicio de metadatos de instancias (IMDS). La última versión de IMDS ayuda a proteger contra vulnerabilidades que exponen las credenciales temporales y deben implementarse. Para acceder a instancias Amazon EC2 con claves o contraseñas, AWS Systems Manager es una forma más segura de acceder a sus instancias y administrarlas con un agente preinstalado sin el secreto almacenado. De forma adicional, otros servicios de AWS, como AWS Lambda, le permiten configurar un rol de servicio de IAM para conceder los permisos de servicio para llevar a cabo acciones de AWS con credenciales temporales. En situaciones en las que no pueda usar credenciales temporales, use herramientas programáticas, como AWS Secrets Manager, para automatizar la rotación y administración de credenciales.

Audite y rote las credenciales de forma periódica: la validación periódica, preferiblemente mediante una herramienta automatizada, es necesaria para verificar que se apliquen los controles correctos. En el caso de las identidades humanas, debería exigir a los usuarios que cambien sus contraseñas periódicamente y retirar las claves de acceso para sustituirlas por credenciales temporales. Al pasar de los usuarios de IAM a las identidades centralizadas, puede generar un informe de credenciales para auditar a sus usuarios de IAM. También recomendamos la aplicación de la configuración de MFA en su proveedor de identidades. Puede configurar Reglas de AWS Config para supervisar estos ajustes. Para las identidades de máquinas, debería recurrir a credenciales temporales con roles de IAM. En las situaciones en las que esto no sea posible, resulta necesario auditar y rotar con frecuencia las claves de acceso.

Almacene y use los secretos de forma segura: para las credenciales que no estén relacionadas con IAM y en las que no se puedan usar credenciales temporales, como para iniciar sesión en bases de datos, use un servicio que se haya diseñado para afrontar la gestión de secretos, como Secrets Manager. Secrets Manager facilita la administración, rotación y almacenamiento seguro de secretos cifrados con servicios admitidos. Las llamadas para acceder a los secretos se registran en AWS CloudTrail con fines de auditoría, y los permisos de IAM pueden concederles un acceso con el mínimo nivel de privilegios.

Nivel de riesgo expuesto si no se establece esta práctica recomendada: Alto

Guía para la implementación

Recursos

Documentos relacionados:

Videos relacionados: