驴Qu茅 es el Security token Service (STS) de AWS?
Permite a los usuarios tener acceso limitado y temporal a los recursos de AWS. Los usuarios pueden utilizar diferentes fuentes como:
- Federation (Usualmente Active Directory).
- Utiliza SAML (Security Assertion Markup Language).
- Brinda acceso temporal basado en credenciales de Active Directory (no se necesita ser un usuario de IAM).
- Single sign on permite acceder a la consola de AWS sin asignar credenciales IAM.
- Federation con aplicaciones m贸viles, mediante Facebook/Amazon/Google o algunos otros proveedores de OpenID.
- Cross Account Access, que permite a los usuarios de una cuenta de AWS acceder a otra.
Terminolog铆a
- Federation
- Combinaci贸n o uni贸n de una lista de usuarios en un dominio (como IAM) con una lista de usuarios en otro dominio (como Active Directory, Facebook, etc).
- Identity Broker.
- Es un servicio que permite tomar la identidad del punto y unirla (federate it) al punto B.
- Identity Store.
- Servicios como Active Directory, Facebook, Google, etc.
- Identities.
- Un usuario de un servicio como Facebook, Google, etc.
Escenario
- El usuario ingresa su nombre de usuario y contrase帽a.
- La aplicaci贸n llama al Identity Broker el cual captura el nombre de usuario y contrase帽a.
- El identity broker utiliza el directorio LDAP para validar la identidad del usuario.
- El identity broker invoca una funci贸n para generar un federation token utilizando las credenciales de IAM. La llamada debe contener una IAM policy de 1 a 36 horas con los permisos que ser谩n otorgados a las credenciales temporales.
- El STS (Security Token Service) confirma que la policy del usuario de IAM invocando la funci贸n GetFederationToken le otorga permisos para crear un nuevo token y retorna 4 valores a la aplicaci贸n (access key, secret access key, token y duration).
- El identity broker regresa una credencial temporal a la aplicaci贸n.
- La aplicaci贸n utiliza las credenciales temporales (con el token incluido) para hacer una petici贸n a Amazon S3.
- Amazon S3 utiliza IAM para verificar que las credenciales permitan realizar la operaci贸n en el bucket especificado.
- IAM da luz verde para que se realice la operaci贸n requerida en S3.
驴Qu茅 se requiere para utilizar STS?
- Desarrollar un identity broker para comunicarse con LDAP y AWS STS.
- El Identity Broker siempre autentifica con LDAP primero, despu茅s con AWS STS.
- La aplicaci贸n entonces recibe acceso temporal a los recursos de AWS.