|
AWS Identity and Access Management (IAM) está lanzando una nueva capacidad que permite a los equipos de seguridad gestionar de forma centralizada el acceso root para cuentas de miembros en AWS Organizations. Ahora puede administrar fácilmente las credenciales de root y realizar acciones con privilegios elevados.
Gestión de credenciales de usuario raíz a escala
Durante mucho tiempo, las cuentas de Amazon Web Services (AWS) contaban con credenciales de usuario raíz con privilegios elevados, que tenían acceso sin restricciones a la cuenta. Este acceso raíz, aunque poderoso, también planteaba importantes riesgos de seguridad. El usuario raíz de cada cuenta de AWS debía protegerse agregando capas de protección como la autenticación multifactor (MFA). Se requirió que los equipos de seguridad administraran y protegieran estas credenciales raíz manualmente. El proceso implicó rotar las credenciales periódicamente, almacenarlas de forma segura y asegurarse de que cumplieran con las políticas de seguridad.
A medida que nuestros clientes ampliaron sus entornos de AWS, este enfoque manual se volvió engorroso y propenso a errores. Por ejemplo, las grandes empresas que operaban cientos o miles de cuentas de miembros luchaban por asegurar el acceso raíz de manera consistente en todas las cuentas. La intervención manual no solo agregó gastos operativos, sino que también creó un retraso en el aprovisionamiento de cuentas, lo que impidió la automatización total y aumentó los riesgos de seguridad. El acceso raíz, si no se protege adecuadamente, podría dar lugar a apropiaciones de cuentas y acceso no autorizado a recursos confidenciales.
Además, cada vez que se requerían acciones de raíz específicas, como desbloquear una política de depósito de Amazon Simple Storage Service (Amazon S3) o una política de recursos de Amazon Simple Queue Service (Amazon SQS), los equipos de seguridad tenían que recuperar y usar credenciales de raíz, lo que solo aumentaba el ataque. superficie. Incluso con un monitoreo riguroso y políticas de seguridad sólidas, mantener las credenciales raíz a largo plazo abrió puertas a posibles malas administraciones, riesgos de cumplimiento y errores manuales.
Los equipos de seguridad comenzaron a buscar una solución más automatizada y escalable. Necesitaban una manera no solo de centralizar la administración de las credenciales raíz, sino también de administrar mediante programación el acceso raíz sin necesidad de credenciales a largo plazo en primer lugar.
Administre centralmente el acceso raíz
Con la nueva capacidad de administrar de forma centralizada el acceso raíz, abordamos el desafío de larga data de administrar las credenciales raíz en múltiples cuentas. Esta nueva capacidad introduce dos capacidades esenciales: la gestión central de credenciales raíz y sesiones raíz. Juntos, ofrecen a los equipos de seguridad una forma segura, escalable y compatible de administrar el acceso raíz en las cuentas de miembros de AWS Organizations.
Primero analicemos el central gestión de credenciales raíz. Con esta capacidad, ahora puede administrar y proteger de forma centralizada las credenciales raíz privilegiadas en todas las cuentas de AWS Organizations. La gestión de credenciales raíz le permite:
- Eliminar credenciales raíz a largo plazo – Los equipos de seguridad ahora pueden eliminar mediante programación las credenciales de usuario raíz de las cuentas de los miembros, lo que confirma que ninguna credencial privilegiada a largo plazo queda vulnerable al uso indebido.
- Prevenir la recuperación de credenciales – No solo elimina las credenciales sino que también impide su recuperación, protegiendo contra cualquier acceso root no intencionado o no autorizado en el futuro.
- Aprovisionar cuentas seguras por defecto – Debido a que ahora puede crear cuentas de miembros sin credenciales raíz desde el principio, ya no necesita aplicar medidas de seguridad adicionales como MFA después del aprovisionamiento de la cuenta. Las cuentas son seguras de forma predeterminada, lo que reduce drásticamente los riesgos de seguridad asociados con el acceso raíz a largo plazo y ayuda a simplificar todo el proceso de aprovisionamiento.
- Ayuda para cumplir – La administración de credenciales raíz permite a los equipos de seguridad demostrar el cumplimiento al descubrir y monitorear de manera centralizada el estado de las credenciales raíz en todas las cuentas de los miembros. Esta visibilidad automatizada confirma que no existen credenciales raíz a largo plazo, lo que facilita el cumplimiento de las políticas de seguridad y los requisitos normativos.
Pero, ¿cómo podemos asegurarnos de que siga siendo posible realizar acciones raíz seleccionadas en las cuentas? Esta es la segunda capacidad que lanzamos hoy: sesiones raíz. Ofrece una alternativa segura para mantener el acceso root a largo plazo. En lugar de acceder manualmente a las credenciales raíz cada vez que se requieren acciones privilegiadas, los equipos de seguridad ahora pueden obtener acceso raíz a corto plazo y con alcance de tareas a las cuentas de los miembros. Esta capacidad garantiza que acciones como desbloquear políticas de depósito S3 o políticas de cola SQS se puedan realizar de forma segura sin la necesidad de credenciales raíz a largo plazo.
Los beneficios clave de las sesiones de raíz incluyen:
- Acceso raíz con ámbito de tarea – AWS permite el acceso raíz a corto plazo para acciones específicas, adhiriéndose a las mejores prácticas de privilegio mínimo. Esto limita el alcance de lo que se puede hacer y minimiza la duración del acceso, reduciendo los riesgos potenciales.
- Gestión centralizada – Ahora puede realizar acciones raíz privilegiadas desde una cuenta central sin necesidad de iniciar sesión en cada cuenta miembro individualmente. Esto agiliza el proceso y reduce la carga operativa de los equipos de seguridad, permitiéndoles centrarse en tareas de nivel superior.
- Alineación con las mejores prácticas de AWS – Al utilizar credenciales a corto plazo, las organizaciones se alinean con las mejores prácticas de seguridad de AWS, que enfatizan el principio de privilegio mínimo y el uso de acceso temporal a corto plazo siempre que sea posible.
Esta nueva capacidad no otorga acceso completo a la raíz. Proporciona credenciales temporales para realizar una de estas cinco acciones específicas. Las primeras tres acciones son posibles con la gestión central de cuentas raíz. Los dos últimos vienen al habilitar las sesiones de root.
- Auditoría de credenciales de usuario raíz – Acceso de solo lectura para revisar la información del usuario root
- Volver a habilitar la recuperación de cuenta – Reactivar la recuperación de cuenta sin credenciales de root
- Eliminar credenciales de usuario root – Eliminación de contraseñas de consola, claves de acceso, certificados de firma y dispositivos MFA
- Desbloqueo de una política de depósito S3 – Editar o eliminar una política de depósito de S3 que niega todos los principales
- Desbloquear una política de cola SQS – Editar o eliminar una política de recursos de Amazon SQS que niega todos los principales
Cómo obtener credenciales de root en una cuenta de miembro
En esta demostración, le muestro cómo preparar su cuenta de administración, crear una cuenta de miembro sin credenciales de raíz y obtener credenciales de raíz temporales para realizar una de las cinco llamadas API autorizadas en la cuenta de miembro. Supongo que ya tienes una organización creada.
Primero, creo una cuenta de miembro.
aws organizations create-account \
--email [email protected] \
--account-name 'Root Accounts Demo account'
{
"CreateAccountStatus": {
"Id": "car-695abd4ee1ca4b85a34e5dcdcd1b944f",
"AccountName": "Root Accounts Demo account",
"State": "IN_PROGRESS",
"RequestedTimestamp": "2024-09-04T20:04:09.960000+00:00"
}
}
Luego, habilito las dos nuevas capacidades en mi cuenta de administración. No se preocupe, estos comandos no alteran el comportamiento de las cuentas de ninguna manera más que permitir el uso de la nueva capacidad.
➜ aws organizations enable-aws-service-access \
--service-principal iam.amazonaws.com
➜ aws iam enable-organizations-root-credentials-management
{
"OrganizationId": "o-rlrup7z3ao",
"EnabledFeatures": [
"RootCredentialsManagement"
]
}
➜ aws iam enable-organizations-root-sessions
{
"OrganizationId": "o-rlrup7z3ao",
"EnabledFeatures": [
"RootSessions",
"RootCredentialsManagement"
]
}
Alternativamente, también puedo usar la consola en la cuenta de administración. Bajo Gestión de accesoselecciono Configuraciones de la cuenta.
Ahora estoy listo para realizar solicitudes para obtener credenciales raíz temporales. Tengo que aprobar una de las cinco políticas de IAM administradas para reducir las credenciales a una acción específica.
➜ aws sts assume-root \
--target-principal \
--task-policy-arn arn=arn:aws:iam::aws:policy/root-task/S3UnlockBucketPolicy
{
"Credentials": {
"AccessKeyId": "AS....XIG",
"SecretAccessKey": "ao...QxG",
"SessionToken": "IQ...SS",
"Expiration": "2024-09-23T17:44:50+00:00"
}
}
Una vez que obtengo el ID de la clave de acceso, la clave de acceso secreta y el token de sesión, los uso como de costumbre con la interfaz de línea de comandos de AWS (AWS CLI) o los SDK de AWS.
Por ejemplo, puedo pasar estos tres valores como variables de entorno.
$ export AWS_ACCESS_KEY_ID=ASIA356SJWJITG32xxx
$ export AWS_SECRET_ACCESS_KEY=JFZzOAWWLocoq2of5Exxx
$ export AWS_SESSION_TOKEN=IQoJb3JpZ2luX2VjEMb//////////wEaCXVxxxx
Ahora que recibí las credenciales temporales, puedo realizar una llamada API restringida como root en la cuenta de miembro. Primero, verifico que ahora tengo credenciales de root. El Arn
El campo confirma que estoy trabajando con la cuenta raíz.
# Call get Caller Identity and observe I'm root in the member account
$ aws sts get-caller-identity
{
"UserId": "012345678901",
"Account": "012345678901",
"Arn": "arn:aws:iam::012345678901:root"
}
Entonces, uso el delete-bucket-policy
de S3 para eliminar una política incorrecta que se ha aplicado a un depósito. La política no válida eliminó todo el acceso al depósito para todos. Para eliminar dicha política se requieren credenciales de root.
aws s3api delete-bucket-policy --bucket my_bucket_with_incorrect_policy
Cuando no hay resultados, significa que la operación fue exitosa. Ahora puedo aplicar una política de acceso correcta a este depósito.
Las credenciales son válidas sólo por 15 minutos. Escribí un breve script de shell para automatizar el proceso. de obtener las credenciales como JSON, exportar las variables de entorno correctas y emitir el comando que quiero ejecutar como root.
Disponibilidad
La administración central del acceso raíz está disponible sin costo adicional en todas las regiones de AWS, excepto en las regiones de AWS GovCloud (EE. UU.) y AWS China, donde no hay una cuenta raíz. Las sesiones raíz están disponibles en todas partes.
Puede comenzar a usarlo a través de la consola de IAM, AWS CLI o AWS SDK. Para obtener más información, visite Usuario raíz de la cuenta de AWS en nuestra documentación y siga las mejores prácticas para proteger sus cuentas de AWS.
GIPHY App Key not set. Please check settings