OIDCflujo de autenticación de IdP de grupo de usuarios - Amazon Cognito

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

OIDCflujo de autenticación de IdP de grupo de usuarios

Con el inicio de sesión con OpenID Connect (OIDC), su grupo de usuarios automatiza un flujo de inicio de sesión con códigos de autorización con su proveedor de identidad (IdP). Una vez que el usuario complete el inicio de sesión con su IDP, Amazon Cognito recopila su código en oauth2/idpresponse el punto de conexión del proveedor externo. Con el token de acceso resultante, el grupo de usuarios consulta el userInfo punto final del IdP para recuperar los atributos del usuario. A continuación, su grupo de usuarios compara los atributos recibidos con las reglas de mapeo de atributos que ha configurado y rellena el perfil del usuario y el token de identificación en consecuencia.

Los ámbitos OAuth 2.0 que solicita en la configuración de su OIDC proveedor definen los atributos de usuario que el IDP proporciona a Amazon Cognito. Como práctica de seguridad recomendada, solicite únicamente los ámbitos que correspondan a los atributos que desee asignar a su grupo de usuarios. Por ejemplo, si su grupo de usuarios lo solicitaopenid profile, obtendrá todos los atributos posibles, pero si lo solicita, solo openid email phone_number obtendrá la dirección de correo electrónico y el número de teléfono del usuario. Puedes configurar los ámbitos desde los que solicitas OIDC IdPs para que difieran de los que autorizas y solicitas en la solicitud de autenticación del cliente de la aplicación y del grupo de usuarios.

Cuando el usuario inicia sesión en la aplicación mediante un OIDC IdP, el grupo de usuarios lleva a cabo el siguiente flujo de autenticación.

  1. El usuario accede a la página de inicio de sesión integrada de Amazon Cognito y se le ofrece la opción de iniciar sesión a través de un OIDC IdP, por ejemplo, Salesforce.

  2. Se redirige al usuario al authorization punto final del OIDC IdP.

  3. Una vez que el usuario se autentica, el OIDC IDP se redirige a Amazon Cognito con un código de autorización.

  4. Amazon Cognito intercambia el código de autorización con el OIDC IDP por un token de acceso.

  5. También crea o actualiza la cuenta de usuario en el grupo de usuarios.

  6. Además, otorga a la aplicación tokens de portador, que pueden incluir tokens de identidad, acceso y actualización:

Flujo de autenticación de OIDC IdP de grupo de usuarios
nota

Amazon Cognito cancela las solicitudes de autenticación que no se completan en 5 minutos y redirige al usuario a la IU alojada. La página muestra un mensaje de error Something went wrong.

OIDCes una capa de identidad adicional a la OAuth 2.0, que especifica los tokens de identidad JSON con formato -formateados (JWT) que emiten las aplicaciones OIDC cliente (partes que dependen). IdPs Consulte la documentación de su OIDC IdP para obtener información sobre cómo añadir Amazon Cognito como OIDC entidad de confianza.

Cuando un usuario se autentica con una adjudicación de código de autorización, el grupo de usuarios devuelve tokens de ID, acceso y actualización. El token de ID es un OIDCtoken estándar para la administración de identidades y el token de acceso es un token OAuth2.0 estándar. Para obtener más información sobre los tipos de adjudicaciones que puede admitir el cliente de la aplicación de grupo de usuarios, consulte Autorizar punto de conexión.

Cómo procesa un grupo de usuarios las reclamaciones de un OIDC proveedor

Cuando el usuario completa el inicio de sesión con un OIDC proveedor externo, la interfaz de usuario alojada en Amazon Cognito recupera un código de autorización del IDP. Su grupo de usuarios intercambia el código de autorización para los tokens de acceso e identificación con el punto de conexióntoken de su IdP. Su grupo de usuarios no transfiere estos tokens a su usuario ni a su aplicación, sino que los usa para crear un perfil de usuario con los datos que presenta en las notificaciones en sus propios tokens.

Amazon Cognito no valida el token de acceso de forma independiente. En cambio, solicita información sobre los atributos del usuario al punto de conexión userInfo del proveedor y espera que se deniegue la solicitud si el token no es válido.

Amazon Cognito valida el token de identificación del proveedor con las siguientes comprobaciones:

  1. Compruebe que el proveedor haya firmado el token con un algoritmo del siguiente conjunto:RSA,, HMAC Elliptic Curve.

  2. Si el proveedor firmó el token con un algoritmo de firma asimétrico, comprueba que el identificador de clave de firma que aparece en la notificación kid del token aparezca en el punto de conexión jwks_uri del proveedor.

  3. Compara la firma del token de identificación con la firma que espera en función de los metadatos del proveedor.

  4. Compare la iss reclamación con el OIDC emisor configurado para el IdP.

  5. Compara si la notificación aud coincide con la identificación de cliente configurada en el IdP o si contiene la identificación de cliente configurada si hay varios valores en el aviso aud.

  6. Comprueba que la marca de tiempo de la notificación exp no sea anterior a la hora actual.

Su grupo de usuarios valida el token de identificación y, a continuación, intenta realizar una solicitud al punto de conexión userInfo del proveedor con el token de acceso del proveedor. Recupera la información del perfil de usuario que los ámbitos del token de acceso le autoricen a leer. A continuación, su grupo de usuarios busca los atributos de usuario que haya establecido como obligatorios en su grupo de usuarios. Debe crear asignaciones de atributos en la configuración del proveedor para los atributos obligatorios. Su grupo de usuarios comprueba el token de identificación del proveedor y la respuesta userInfo. Su grupo de usuarios escribe todas las notificaciones que coinciden con las reglas de asignación en los atributos de usuario del perfil de usuario del grupo de usuarios. Su grupo de usuarios hace caso omiso de los atributos que coinciden con una regla de asignación, pero no son obligatorios y no aparecen en las notificaciones del proveedor.