AWS Identity and Access Management (IAM) es un servicio de AWS que ayuda a gestionar el acceso a los recursos de AWS de manera segura. Utilizando IAM, puedes controlar quién está autenticado (firmado) y autorizado (tiene permisos) para usar recursos. IAM te permite gestionar usuarios y sus niveles de acceso a los recursos de AWS de manera centralizada.
Componentes Principales de IAM
1. Usuarios
- Descripción: Son las identidades individuales que interactúan con los recursos de AWS. Cada usuario puede tener permisos específicos que restringen qué acciones están permitidas realizar en los recursos de AWS.
- Uso: Crear usuarios para empleados individuales y asignarles credenciales, como contraseñas y claves de acceso.
2. Grupos
- Descripción: Son colecciones de usuarios, lo que facilita la asignación de permisos a múltiples usuarios a la vez.
- Uso: Crear un grupo para un departamento o rol específico y asignar políticas de IAM al grupo. Todos los usuarios en el grupo heredan los permisos del grupo.
3. Roles
- Descripción: Son un conjunto de permisos que no están asociados directamente con un usuario específico, sino que se pueden asumir por cualquier usuario que necesite esos permisos temporalmente.
- Uso: Asignar roles a servicios de AWS, como EC2 o Lambda, para permitirles realizar acciones específicas. Los roles también se pueden utilizar para delegar acceso entre cuentas de AWS.
4. Políticas
- Descripción: Son documentos en formato JSON que definen los permisos específicos para un usuario, grupo, o rol. Las políticas pueden permitir o denegar el acceso a recursos de AWS.
- Uso: Crear políticas que gestionen el acceso a los servicios y recursos de AWS, especificando qué acciones están permitidas o denegadas.
Funcionalidades y Servicios de IAM
A. Administración de Identidades
- Gestión de credenciales de seguridad: Proporciona herramientas para gestionar de forma segura las credenciales, como la rotación de claves y la política de contraseñas.
- Autenticación multifactor (MFA): Añade una capa adicional de seguridad al requerir más de una forma de autenticación para acceder a los recursos de AWS.
B. Control de Acceso
- Control de acceso basado en condiciones: Permite especificar condiciones bajo las cuales se concede o se niega el acceso a los recursos (por ejemplo, la hora del día).