AWS IAM
Identity and Access Management
Controla quién —persona, servicio o pipeline— puede hacer qué dentro de la cuenta de AWS.
En palabras simples
Es el sistema de llaves del edificio: define qué puertas abre cada credencial. No guarda nada adentro de las salas, solo decide quién entra a cuál.
Cuándo aplicarlo
Siempre. Cualquier persona, servicio o proceso automatizado que necesite tocar recursos de AWS pasa primero por IAM — es la base de la seguridad de toda la cuenta.
- ▸Dar a GitHub Actions permiso para desplegar el sitio, sin guardar contraseñas
- ▸Crear usuarios para cada miembro del club con acceso limitado a lo que necesitan
- ▸Restringir qué puede hacer una función Lambda dentro de la cuenta
- ▸Auditar quién hizo qué cuando algo se rompe
Vocabulario mínimo
- Usuario
- Una identidad permanente para una persona. Tiene credenciales propias de acceso.
- Rol
- Una identidad temporal que alguien o algo puede "asumir". Es la forma recomendada para servicios y automatizaciones.
- Política
- Un documento JSON que lista qué acciones están permitidas o denegadas sobre qué recursos.
- Menor privilegio
- El principio central: dar exactamente los permisos necesarios, nunca más "por si acaso".
- Cuenta raíz
- La identidad original de la cuenta. Solo debe usarse para tareas que la exigen, con MFA activado y nunca compartida.
Costo y capa gratuita
- Cómo se cobra
- IAM es gratuito. Solo pagas por los recursos que las identidades consumen.
- Capa gratuita
- Sin costo, sin límites de uso.
Cuidado con los créditos
- ⚠IAM no cuesta, pero un permiso demasiado amplio sí: una credencial filtrada con acceso total puede consumir todos los créditos del club en horas.
- ⚠Publicar por accidente claves de acceso en un repositorio público es la causa número uno de facturas inesperadas.
Descripción
IAM es el sistema de identidades y permisos de AWS. No almacena datos de la aplicación ni corre código: define quién puede hacer qué. Eso incluye personas — los miembros del club — pero también servicios de AWS actuando en nombre de otros procesos, como GitHub Actions desplegando este mismo sitio.
El principio central es el de menor privilegio: cada identidad debería tener exactamente los permisos que necesita, ni uno más.
Cómo funciona
- Creas usuarios para personas y roles para servicios o automatizaciones.
- Adjuntas políticas que describen acciones permitidas sobre recursos concretos.
- Cuando alguien intenta una acción, IAM evalúa las políticas aplicables: una denegación explícita siempre gana sobre cualquier permiso.
- Los roles se asumen temporalmente, entregando credenciales que expiran solas.
Manos a la obra
- Crea un usuario nuevo sin ningún permiso e inicia sesión con él.
- Intenta listar los buckets de S3: fallará con Access Denied.
- Adjunta una política que permita solo
s3:ListAllMyBucketsy repite: ahora funciona, pero abrir un bucket concreto sigue fallando. - Esa progresión — permiso por permiso — es la mejor forma de entender el menor privilegio.
Ejemplo visual
El rol no contiene nada: solo autoriza. Si mañana se filtrara el workflow de GitHub, no habría ninguna llave que robar, y el permiso más amplio disponible seguiría siendo «escribir en ese bucket».
Cuándo NO es la mejor opción
- AWS IAM Identity Center — si el club crece y necesitan gestionar accesos de muchas personas en varias cuentas de AWS a la vez.
Se usa junto con
Aparece en certificaciones
- AWS Certified Cloud Practitioner
- AWS Certified Solutions Architect – Associate
- AWS Certified Security – Specialty