AWS IAM Esencial2010年〜
Servicio de autenticación y autorización para gestionar de forma segura el acceso a los recursos de AWS
Qué hace
AWS IAM (Identity and Access Management) es un servicio para controlar de forma segura el acceso a los recursos de AWS. Permite definir con detalle quién (usuarios, roles) puede hacer qué (leer, escribir, eliminar) en qué recursos (S3, EC2, etc.). IAM es gratuito y está disponible automáticamente al crear una cuenta de AWS.
Casos de uso
Se utiliza para gestionar permisos de acceso a AWS por miembro del equipo, controlar el acceso de aplicaciones a servicios de AWS, otorgar acceso temporal a socios externos, implementar políticas de acceso basadas en requisitos de cumplimiento y gestionar el acceso en entornos multicuenta. Constituye la base de seguridad de AWS.
Analogía cotidiana
Es como un sistema de control de acceso de un edificio. Solo las personas con una credencial de empleado (usuario IAM) pueden entrar al edificio, y cada departamento tiene acceso a diferentes pisos (permisos). El equipo de contabilidad puede entrar a la sala del sistema financiero y el equipo de desarrollo puede entrar a la sala de servidores, pero no pueden acceder a las áreas del otro. Los administradores pueden cambiar los permisos en cualquier momento.
¿Qué es IAM?
AWS Identity and Access Management (IAM) es el servicio que constituye el núcleo de la seguridad de AWS. Al crear una cuenta de AWS, se crea un usuario raíz con permisos completos, pero la práctica recomendada es evitar usar el usuario raíz para las tareas cotidianas. En su lugar, cree usuarios y roles de IAM con solo los permisos mínimos necesarios. IAM es un servicio global, lo que significa que la misma configuración se aplica en todo el mundo independientemente de la región.
Conceptos clave
IAM tiene cuatro conceptos clave. Los usuarios son identidades que corresponden a personas individuales y se utilizan para el inicio de sesión en la consola y el acceso programático. Los grupos son colecciones de usuarios; cuando se asignan permisos a un grupo, se aplican a todos los miembros. Los roles proporcionan permisos temporales y se utilizan para otorgar acceso a servicios de AWS como instancias EC2 y funciones Lambda. Las políticas son definiciones de permisos escritas en formato JSON.
El principio de mínimo privilegio
La práctica más importante en IAM es el principio de mínimo privilegio. Otorgue a cada usuario o rol solo los permisos mínimos necesarios para sus tareas. Por ejemplo, un proceso que solo lee datos de S3 debería tener únicamente permisos de lectura en S3, no de escritura ni eliminación. IAM Access Analyzer permite analizar qué permisos se están utilizando realmente e identificar los innecesarios. Para obtener una comprensión integral del principio de mínimo privilegio, los libros especializados (Amazon) son un excelente recurso.
Primeros pasos
Para comenzar con IAM, primero cree un usuario IAM de administrador en la consola de IAM y minimice el uso del usuario raíz. Luego cree usuarios y grupos para los miembros de su equipo y asigne políticas administradas de AWS (conjuntos de permisos predefinidos). Habilitar MFA (autenticación multifactor) protege su cuenta incluso si una contraseña se ve comprometida.
Aspectos a tener en cuenta
- No utilice el usuario raíz para las operaciones diarias. Configure MFA y gestiónelo de forma segura
- Nunca codifique claves de acceso directamente en el código fuente. Utilice roles de IAM o variables de entorno
- IAM es gratuito, pero una configuración incorrecta puede provocar incidentes de seguridad, por lo que siempre debe seguir el principio de mínimo privilegio