🧑💻 Asignar rol de IAM a una instancia EC2 y probar acceso
En este ejercicio vas a crear y asociar un rol de IAM a una instancia EC2, validando permisos diferenciados sobre buckets de S3.
Pasos del laboratorio
Volvé a iniciar sesión como usuario administrador.
Crear buckets de S3:
- Accedé a la consola de S3.
- Creá dos buckets:
iam-test-<tu_usuario>yiam-test-other-<tu_usuario>. - Subí un archivo a cada bucket.
Crear el rol de IAM:
- Desde la consola de IAM, seleccioná Roles > Create role.
- Elegí EC2 como entidad de confianza.
- En permisos, creá una política personalizada con el siguiente JSON (ajustá el nombre del bucket):
{
"Version": "2012-10-17",
"Statement": [
{
"Action": ["s3:ListAllMyBuckets", "s3:GetBucketLocation"],
"Effect": "Allow",
"Resource": ["arn:aws:s3:::*"]
},
{
"Effect": "Allow",
"Action": [
"s3:Get*",
"s3:List*"
],
"Resource": [
"arn:aws:s3:::iam-test-<tu_usuario>/*",
"arn:aws:s3:::iam-test-<tu_usuario>"
]
}
]
}- Guardá la política como
IAMBucketTestPolicy. - Asociá la política al nuevo rol
IAMBucketTestRole.
Asociar el rol a la instancia EC2:
- En la consola de EC2, seleccioná la instancia
prod-instance. - Actions > Security > Modify IAM role.
- Elegí
IAMBucketTestRoley guardá.
- En la consola de EC2, seleccioná la instancia
Verificar los permisos desde la instancia:
- Conectate por EC2 Instance Connect.
- Ejecutá:
aws s3 ls
aws s3 ls iam-test-<tu_usuario>
aws s3 ls iam-test-other-<tu_usuario>- ✅ Vas a listar los buckets y el contenido del bucket propio.
- ❌ No vas a tener permisos sobre el bucket
iam-test-other-<tu_usuario>.
¡Laboratorio de IAM completado! Ahora tu instancia EC2 accede a recursos S3 bajo control granular por rol.