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.
Utilizar proveedores OIDC de identidad con un grupo de usuarios
Los usuarios pueden iniciar sesión en la aplicación con sus cuentas existentes de los proveedores de identidad de OpenID Connect (OIDC) (IdPs). Con los OIDC proveedores, los usuarios de sistemas de inicio de sesión único independientes pueden proporcionar las credenciales existentes, mientras que la aplicación recibe los OIDC tokens en el formato compartido de grupos de usuarios. Un grupo de usuarios es un OIDC IdP que también puede servir como parte de confianza intermedia entre varias aplicaciones externas OIDC IdPs y su aplicación.
Los usuarios que inician sesión con un OIDC IdP no están obligados a proporcionar nuevas credenciales o información para acceder a la aplicación de su grupo de usuarios. La aplicación puede redirigirlos silenciosamente a su IdP para iniciar sesión, con un grupo de usuarios como herramienta en segundo plano que estandariza el formato de token de la aplicación. Para obtener más información sobre la redirección de IdP, consulte. Autorizar punto de conexión
Al igual que con otros proveedores de identidad de terceros, debe registrar su aplicación con el OIDC proveedor y obtener información sobre la aplicación de IdP que desea conectar a su grupo de usuarios. El OIDC IDP de un grupo de usuarios requiere un ID de cliente, un secreto de cliente, los ámbitos que desee solicitar e información sobre los puntos finales del servicio del proveedor. Su grupo de usuarios puede descubrir los OIDC puntos finales del proveedor desde un punto final de detección o puede introducirlos manualmente. También debe examinar los identificadores de los proveedores y crear asignaciones de atributos entre el IdP y los atributos de su grupo de usuarios.
nota
El inicio de sesión a través de un tercero (federación) está disponible en los grupos de usuarios de Amazon Cognito. Esta función es independiente de la OIDC federación con los grupos de identidades de Amazon Cognito.
Puede añadir un OIDC IdP a su grupo de usuarios mediante el método AWS Management Console de grupo API de usuarios AWS CLI, o mediante él. CreateIdentityProvider
Temas
Requisitos previos
Antes de comenzar, necesitará lo siguiente:
-
Un grupo de usuarios con un cliente de aplicación y un dominio de grupo de usuarios. Para obtener más información, consulte Crear un grupo de usuarios.
-
Un OIDC IdP con la siguiente configuración:
-
Admite la autenticación del cliente
client_secret_post
. Amazon Cognito no comprueba latoken_endpoint_auth_methods_supported
reclamación de su IDP en el punto final de OIDC detección. Amazon Cognito no admite la autenticación del clienteclient_secret_basic
. Para obtener más información acerca de la autenticación del cliente, consulte la sección sobre autenticación del clienteen la documentación de OpenID Connect. -
Solo se usa HTTPS para OIDC puntos de enlace como
openid_configuration
, yuserInfo
.jwks_uri
-
Solo utiliza TCP los puertos 80 y 443 para los puntos OIDC finales.
-
Solo firma los identificadores con los RSA algoritmos HMAC - SHAECDSA, o.
-
Publica una reclamación
kid
de ID clave en sujwks_uri
e incluye una reclamaciónkid
en sus tokens. -
Presenta una clave pública no caducada con una cadena de confianza de CA raíz válida.
-
Paso 1: Registrarse con un OIDC IdP
Antes de crear un OIDC IdP con Amazon Cognito, debe registrar la aplicación con el OIDC IdP para recibir un ID de cliente y un secreto de cliente.
Para registrarse con un OIDC IdP
-
Cree una cuenta de desarrollador con el OIDC IdP.
Vínculos a OIDC IdPs OIDCIdP Instalación OIDCDescubrimiento URL Salesforce https://login.salesforce.com
Ping Identity https://
Your Ping domain address
:9031/idp/userinfo.openidPor ejemplo:
https://pf.company.com:9031/idp/userinfo.openid
Okta https://
Your Okta subdomain
.oktapreview.como bien
https://
Your Okta subdomain
.okta.comMicrosoft Azure Active Directory (Azure AD) https://login.microsoftonline.com/
{tenant}
/v2.0Google https://accounts.google.com
nota
Amazon Cognito ofrece la opción de elegir a Google como proveedor de identidad social integrado para iniciar sesión. Le recomendamos que utilice el proveedor de identidad integrado. Consulte Usar proveedores de identidad social con un grupo de usuarios.
-
Registre el dominio de su grupo de URL usuarios en el
/oauth2/idpresponse
punto final con su OIDC IdP. Esto garantiza que el OIDC IDP lo acepte más adelante de Amazon Cognito cuando autentique a los usuarios.https://
mydomain.us-east-1.amazoncognito.com
/oauth2/idpresponse -
Registra la devolución de llamada URL en tu grupo de usuarios de Amazon Cognito. Esta es URL la página a la que Amazon Cognito redirige al usuario tras una autenticación correcta.
https://
www.example.com
-
Seleccione los ámbitos
. El ámbito openid es obligatorio. El ámbito email es necesario para conceder acceso a las notificaciones email e email_verified . -
El OIDC IdP le proporciona un ID de cliente y un secreto de cliente. Los usará cuando configure un OIDC IdP en su grupo de usuarios.
Ejemplo: utilice Salesforce como un OIDC IdP con su grupo de usuarios
Utiliza un OIDC IdP cuando quiere establecer confianza entre un IdP OIDC compatible, como Salesforce, y su grupo de usuarios.
-
Cree una cuenta
en el sitio web de desarrolladores de Salesforce. -
Inicie sesión con la cuenta de desarrollador que ha configurado en el paso anterior.
-
En la página de Salesforce, realice alguna de las operaciones siguientes:
-
Si utiliza Lightning Experience, elija el icono de engranaje de configuración y, a continuación, elija Setup Home (Inicio de configuración).
-
Si utiliza Salesforce Classic y ve la opción Setup (Configuración) en el encabezado de la interfaz de usuario, elíjala.
-
Si utiliza Salesforce Classic y no aparece la opción Setup (Configuración) en el encabezado, elija su nombre en la barra de navegación superior y elija Setup (Configuración) en la lista desplegable.
-
-
En la barra de navegación de la izquierda, elija Company Settings (Configuración de la empresa).
-
En la barra de navegación, elija Domain (Dominio), introduzca un dominio y elija Create (Crear).
-
En la barra de navegación izquierda, en Platform Tools (Herramientas de plataforma) y elija Apps (Aplicaciones).
-
Elija App Manager (Administrador de aplicaciones).
-
-
Elija New connected app (Nueva aplicación conectada).
-
Rellene los campos según sea necesario.
En Inicio URL, introduzca un URL en el
/authorize
punto final del dominio del grupo de usuarios que inicia sesión con su IdP de Salesforce. Cuando sus usuarios accedan a su aplicación conectada, Salesforce los dirige a ella para completar el inicio de sesiónURL. A continuación, Salesforce redirige a los usuarios a la función de devolución de llamada URL que ha asociado al cliente de su aplicación.https://
mydomain.us-east-1.amazoncognito.com
/authorize?response_type=code&client_id=<your_client_id>
&redirect_uri=https://www.example.com
&identity_provider=CorpSalesforce
-
Habilite OAuthla configuración e introduzca el
/oauth2/idpresponse
punto final URL del dominio de su grupo de usuarios en Callback. URL Aquí es URL donde Salesforce emite el código de autorización que Amazon Cognito intercambia por OAuth un token.https://
mydomain.us-east-1.amazoncognito.com
/oauth2/idpresponse
-
-
Seleccione los ámbitos
. Debe incluir el valor openid de ámbito. Para conceder acceso a las notificaciones email e email_verified, añada el ámbito email. Separe los ámbitos por espacios. -
Seleccione Crear.
En Salesforce, el ID de cliente se denomina Consumer Key (Clave de consumidor)y el secreto de cliente se llama Consumer Secret (Secreto de consumidor). Observe los valores del ID de cliente y el secreto de cliente. Los usará en la sección siguiente.
Paso 2: Agregue un OIDC IdP a su grupo de usuarios
En esta sección, configura su grupo de usuarios para procesar las solicitudes de autenticación OIDC basadas de un OIDC IdP.
Para añadir un OIDC IdP (consola de Amazon Cognito)
Añadir un OIDC IdP
-
Vaya a la consola de Amazon Cognito
. Si se le solicita, introduzca sus AWS credenciales. -
Elija User Pools (Grupos de usuarios) en el menú de navegación.
-
Elija un grupo de usuarios existente en la lista o cree un grupo de usuarios.
-
Elija la pestaña Sign-in experience (Experiencia de inicio de sesión). Localice Federated sign-in (Inicio de sesión federado) y luego seleccione Add an identity provider (Agregar un proveedor de identidad).
-
Elija un IdP OpenID Connect.
-
Introduzca un nombre único en Provider name (Nombre de proveedor).
-
Introduzca el ID de cliente que recibió de su proveedor en Client ID (ID de cliente).
-
Introduzca el secreto de cliente que recibió de su proveedor en Client Secret (Secreto de cliente).
-
Introduzca los Ámbitos autorizados para este proveedor. Los ámbitos definen qué grupos de atributos de usuario (tales como
name
yemail
) serán solicitados por su aplicación al proveedor. Los ámbitos deben estar separados por espacios, siguiendo la especificación OAuth2.0. Al usuario de la aplicación se le pedirá su consentimiento para proporcionar estos atributos a su aplicación.
-
Elija un método de solicitud de atributos para proporcionar a Amazon Cognito el HTTP método (uno GET o variosPOST) que debe utilizar para obtener los detalles del usuario desde el userInfopunto de enlace gestionado por su proveedor.
-
Elija un método de configuración para recuperar los puntos finales de OpenID Connect, ya sea rellenándolos automáticamente por el emisor URL o ingresándolos manualmente. Utilice el rellenado automático del emisor URL cuando su proveedor tenga un
.well-known/openid-configuration
punto de conexión público en el que Amazon Cognito pueda recuperar URLs los puntos deauthorization
enlacetoken
,userInfo
,jwks_uri
y. -
Introduzca el emisor URL o
authorization
,token
userInfo
, y eljwks_uri
punto final URLs de su IdP.nota
URLDebe empezar con una
https://
barra y no debe terminar con ella./
Para URL ello, solo se pueden utilizar los puertos 443 y 80. Por ejemplo, Salesforce usa estoURL:https://login.salesforce.com
Si elige el llenado automático, el documento de descubrimiento debe utilizar HTTPS los siguientes valores:
authorization_endpoint
token_endpoint
,userinfo_endpoint
, yjwks_uri
. De lo contrario, el inicio de sesión fallará. -
De forma predeterminada, la OIDC subnotificación se asigna al atributo Nombre de usuario del grupo de usuarios. Puede asignar otras OIDC notificaciones
a los atributos del grupo de usuarios. Introduzca la OIDC reclamación y elija el atributo del grupo de usuarios correspondiente en la lista desplegable. Por ejemplo, a la notificación email (correo electrónico) se le suele asignar el atributo de grupo de usuarios Email (Correo electrónico). -
Asigne atributos de su IdP al grupo de usuarios. Para obtener más información, consulte Especificación de asignaciones de atributos del proveedor de identidad para su grupo de usuarios.
-
Seleccione Crear.
-
DelIntegración de clientes de aplicaciones, elija uno de los Clientes de aplicaciones en la lista y Edit hosted UI settings (Modificar la configuración de IU). Agregue el nuevo OIDC IdP al cliente de la aplicación en Proveedores de identidad.
-
Elija Guardar cambios.
Para agregar un OIDC IdP ()AWS CLI
-
Consulte las descripciones de los parámetros del CreateIdentityProviderAPImétodo.
aws cognito-idp create-identity-provider --user-pool-id
string
--provider-namestring
--provider-type OIDC --provider-detailsmap
--attribute-mappingstring
--idp-identifiers (list) --cli-input-jsonstring
--generate-cli-skeletonstring
Utilice este mapa de detalles de proveedor:
{ "client_id": "string", "client_secret": "string", "authorize_scopes": "string", "attributes_request_method": "string", "oidc_issuer": "string", "authorize_url": "string", "token_url": "string", "attributes_url": "string", "jwks_uri": "string" }
Paso 3: Pruebe la configuración de su OIDC IdP
Puede crear la autorización URL utilizando los elementos de las dos secciones anteriores y utilizarlos para probar la configuración de su OIDC IdP.
https://
mydomain.us-east-1.amazoncognito.com
/oauth2/authorize?response_type=code&client_id=1example23456789
&redirect_uri=https://www.example.com
Puede encontrar el dominio en la página de la consola Domain name (Nombre de dominio) del grupo de usuarios. El client_id se encuentra en la página General settings (Configuración general). Usa tu callback URL para el parámetro redirect_uri. Esta es la página a URL la que se redirigirá al usuario tras una autenticación correcta.