Introducción

AWS Identity and Access Management (IAM) es un servicio que permite gestionar de manera segura el acceso a los servicios y recursos de AWS. Con IAM, puedes crear y gestionar usuarios y grupos, y utilizar permisos para permitir o denegar su acceso a los recursos de AWS.

Conceptos Clave

  1. Usuarios: Entidades que representan a una persona o aplicación que interactúa con AWS.
  2. Grupos: Colecciones de usuarios que comparten permisos.
  3. Roles: Entidades que permiten delegar permisos a usuarios y servicios de AWS.
  4. Políticas: Documentos JSON que definen permisos para usuarios, grupos y roles.

Configuración Básica

Crear un Usuario IAM

  1. Accede a la consola de administración de AWS.
  2. Navega a IAM: En el menú de servicios, selecciona "IAM".
  3. Selecciona "Usuarios" en el panel de navegación.
  4. Haz clic en "Agregar usuario".
  5. Introduce un nombre de usuario y selecciona el tipo de acceso (programático, consola de administración o ambos).
  6. Configura permisos: Puedes agregar el usuario a un grupo existente, copiar permisos de un usuario existente o adjuntar políticas directamente.
  7. Revisa y crea el usuario.

Crear un Grupo IAM

  1. Accede a la consola de administración de AWS.
  2. Navega a IAM.
  3. Selecciona "Grupos" en el panel de navegación.
  4. Haz clic en "Crear nuevo grupo".
  5. Introduce un nombre de grupo.
  6. Adjunta políticas: Selecciona las políticas que deseas aplicar al grupo.
  7. Revisa y crea el grupo.

Crear una Política IAM

  1. Accede a la consola de administración de AWS.
  2. Navega a IAM.
  3. Selecciona "Políticas" en el panel de navegación.
  4. Haz clic en "Crear política".
  5. Usa el editor visual o JSON para definir la política.
  6. Revisa y crea la política.

Crear un Rol IAM

  1. Accede a la consola de administración de AWS.
  2. Navega a IAM.
  3. Selecciona "Roles" en el panel de navegación.
  4. Haz clic en "Crear rol".
  5. Selecciona el tipo de entidad que usará el rol (servicio de AWS, cuenta de AWS, etc.).
  6. Adjunta políticas: Selecciona las políticas que deseas aplicar al rol.
  7. Revisa y crea el rol.

Ejemplo Práctico

Crear un Usuario con Acceso Programático

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "s3:*",
      "Resource": "*"
    }
  ]
}
  1. Accede a IAM y selecciona "Usuarios".
  2. Haz clic en "Agregar usuario".
  3. Introduce el nombre de usuario (por ejemplo, developer).
  4. Selecciona "Acceso programático".
  5. Adjunta la política anterior para permitir acceso completo a S3.
  6. Revisa y crea el usuario.

Crear un Grupo con Permisos Limitados

  1. Accede a IAM y selecciona "Grupos".
  2. Haz clic en "Crear nuevo grupo".
  3. Introduce el nombre del grupo (por ejemplo, read-only-group).
  4. Adjunta la política "AmazonS3ReadOnlyAccess".
  5. Revisa y crea el grupo.

Crear un Rol para un Servicio de AWS

  1. Accede a IAM y selecciona "Roles".
  2. Haz clic en "Crear rol".
  3. Selecciona "AWS service" y luego "EC2".
  4. Adjunta la política "AmazonS3FullAccess".
  5. Revisa y crea el rol.

Ejercicios Prácticos

Ejercicio 1: Crear un Usuario con Acceso a DynamoDB

  1. Crea un usuario IAM con acceso programático.
  2. Adjunta una política que permita acceso completo a DynamoDB.

Solución

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "dynamodb:*",
      "Resource": "*"
    }
  ]
}

Ejercicio 2: Crear un Grupo con Permisos de Lectura en S3

  1. Crea un grupo IAM.
  2. Adjunta una política que permita solo lectura en S3.

Solución

Adjunta la política "AmazonS3ReadOnlyAccess" al grupo.

Ejercicio 3: Crear un Rol para Lambda con Acceso a CloudWatch Logs

  1. Crea un rol IAM para el servicio Lambda.
  2. Adjunta una política que permita acceso a CloudWatch Logs.

Solución

Adjunta la política "AWSLambdaBasicExecutionRole" al rol.

Errores Comunes y Consejos

  1. No usar políticas gestionadas por AWS: Siempre que sea posible, utiliza políticas gestionadas por AWS para simplificar la gestión de permisos.
  2. No revisar permisos: Asegúrate de revisar y entender los permisos que estás otorgando para evitar accesos no deseados.
  3. No usar roles: Utiliza roles en lugar de usuarios con acceso programático para servicios de AWS, ya que es más seguro y manejable.

Conclusión

IAM es una herramienta poderosa para gestionar el acceso a los recursos de AWS. Comprender cómo crear y gestionar usuarios, grupos, roles y políticas es fundamental para mantener la seguridad y eficiencia en tu entorno de AWS. En el próximo módulo, exploraremos otros servicios esenciales de AWS que te ayudarán a construir y gestionar tus aplicaciones en la nube.

© Copyright 2024. Todos los derechos reservados