馃敟 AWS SECURITY TOKEN SERVICE (STS)

AWS Security Token Service (STS)

驴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

  1. El usuario ingresa su nombre de usuario y contrase帽a.
  2. La aplicaci贸n llama al Identity Broker el cual captura el nombre de usuario y contrase帽a.
  3. El identity broker utiliza el directorio LDAP para validar la identidad del usuario.
  4. 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.
  5. 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).
  6. El identity broker regresa una credencial temporal a la aplicaci贸n.
  7. La aplicaci贸n utiliza las credenciales temporales (con el token incluido) para hacer una petici贸n a Amazon S3.
  8. Amazon S3 utiliza IAM para verificar que las credenciales permitan realizar la operaci贸n en el bucket especificado.
  9. IAM da luz verde para que se realice la operaci贸n requerida en S3.

驴Qu茅 se requiere para utilizar STS?

  1. Desarrollar un identity broker para comunicarse con LDAP y AWS STS.
  2. El Identity Broker siempre autentifica con LDAP primero, despu茅s con AWS STS.
  3. La aplicaci贸n entonces recibe acceso temporal a los recursos de AWS.