DynamoDB - Federación de identidades web

Web Identity Federation le permite simplificar la autenticación y la autorización para grandes grupos de usuarios. Puede omitir la creación de cuentas individuales y solicitar a los usuarios que inicien sesión en un proveedor de identidad para obtener credenciales o tokens temporales. Utiliza AWS Security Token Service (STS) para administrar las credenciales. Las aplicaciones utilizan estos tokens para interactuar con los servicios.

Web Identity Federation también admite otros proveedores de identidad, como Amazon, Google y Facebook.

Function- En uso, Web Identity Federation primero llama a un proveedor de identidad para la autenticación de usuarios y aplicaciones, y el proveedor devuelve un token. Esto hace que la aplicación llame a AWS STS y pase el token para la entrada. STS autoriza la aplicación y le otorga credenciales de acceso temporal, que permiten que la aplicación use un rol de IAM y acceda a recursos según la política.

Implementación de la federación de identidades web

Debe realizar los siguientes tres pasos antes de su uso:

  • Utilice un proveedor de identidad de terceros compatible para registrarse como desarrollador.

  • Registre su aplicación con el proveedor para obtener un ID de aplicación.

  • Cree uno o varios roles de IAM, incluido el adjunto de políticas. Debe usar un rol por proveedor por aplicación.

Asuma uno de sus roles de IAM para usar Web Identity Federation. Luego, su aplicación debe realizar un proceso de tres pasos:

  • Authentication
  • Adquisición de credenciales
  • Acceso a recursos

En el primer paso, su aplicación usa su propia interfaz para llamar al proveedor y luego administra el proceso del token.

Luego, el paso dos administra los tokens y requiere que su aplicación envíe un AssumeRoleWithWebIdentitysolicitud a AWS STS. La solicitud contiene el primer token, el ID de la aplicación del proveedor y el ARN del rol de IAM. El STS proporciona credenciales que expiran después de un período determinado.

En el último paso, su aplicación recibe una respuesta de STS que contiene información de acceso a los recursos de DynamoDB. Consta de credenciales de acceso, tiempo de vencimiento, rol e ID de rol.