Comment configurer OneLogin en tant que fournisseur d'identité SAML avec un groupe d'utilisateurs Amazon Cognito ?

Date de la dernière mise à jour : 14/02/2019

Je souhaite utiliser OneLogin en tant que fournisseur d'identité (IdP) SAML 2.0 (Security Assertion Markup Language 2.0) avec un groupe d'utilisateurs Amazon Cognito. Comment puis-je configurer cela ?

Brève description

Les groupes d'utilisateurs Amazon Cognito permettent de se connecter via un tiers (fédération), y compris par le biais d'un fournisseur d'identité (IdP) SAML tel que OneLogin. Pour plus d'informations, consultez les sections Ajout de la connexion d'un groupe d'utilisateurs via un tiers et Ajout de fournisseurs d'identité SAML à un groupe d'utilisateurs.

Pour configurer OneLogin en tant que fournisseur d'identité SAML, vous devez posséder un groupe d'utilisateurs Amazon Cognito, ainsi qu'un compte OneLogin avec une application.

Résolution

Créer un groupe d'utilisateurs Amazon Cognito avec une application client et un nom de domaine

Pour plus d'informations, consultez les articles suivants :

Remarque : lors de la création d'un groupe d'utilisateurs, l'attribut standard email est sélectionné par défaut. Pour plus d'informations sur les attributs de groupe d'utilisateurs, consultez la section Configuration des attributs de groupe d'utilisateurs.

Créer un compte OneLogin

Pour plus d'informations, rendez-vous sur le site Web OneLogin et sélectionnez Start a free trial (Démarrer l'essai gratuit).

Sur la page de création de compte, dans le champ Your OneLogin Domain (Votre domaine OneLogin), renseignez le domaine fourni par OneLogin.

Créer une application OneLogin

1.    Depuis le portail OneLogin (https://your-new-domain.onelogin.com/portal/), sélectionnez Administration.

2.    En haut de la page Administration, maintenez le curseur sur Apps (Applications), puis sélectionnez Add applications (Ajouter des applications).

3.    Dans la barre de recherche sous Find Applications (Rechercher des applications), saisissez saml, puis sélectionnez SAML Test Connector (IdP) (Connecteur test SAML [Fournisseur d'Identité]) pour ouvrir la page Add SAML Test Connector (IdP) (Ajouter un connecteur test SAML [Fournisseur d'identité]).

4.    (Facultatif) Effectuez l'une des actions suivantes :
Dans le champ Display Name (Nom d'affichage), saisissez un nom et une description. Par exemple, Configuration Cognito (Fournisseur d'identité).
Pour Rectangulaire Icon (Icône rectangulaire) et Square Icon (Icône carrée), chargez des icônes miniatures respectant les spécifications indiquées.
Dans le champ Description, saisissez une brève description. Par exemple, Pour le groupe d'utilisateurs Amazon Cognito.

5.    Sélectionnez Save (Enregistrer).

Modifier votre configuration d'application OneLogin

1.    Sélectionnez Configuration.

2.    Sur la page Configuration, procédez de la façon suivante :
Sous RelayState, saisissez une URL valide, par exemple https://www.exemple.com.
Sous Audience, saisissez urn:amazon:cognito:sp:yourUserPoolId.
Laissez le champ Recipient (Destinataire) vide.
Sous ACS (Consumer) URL Validator (Validation d'URL ACS [Consommateur]), copiez l'adresse https://yourDomainPrefix.auth.region.amazoncognito.com/saml2/idpresponse.
Sous ACS (Consumer) URL (URL ACS [Consommateur]), copiez l'adresse https://yourDomainPrefix.auth.region.amazoncognito.com/saml2/idpresponse.
Laissez le champ Single Logout URL (URL de déconnexion unique) vide.

Remarque : pour Audience, remplacez yourUserPoolId par l'ID de votre groupe d'utilisateurs Amazon Cognito. Recherchez l'ID dans la console Amazon Cognito sous l'onglet Paramètres généraux de la page de gestion de votre groupe d'utilisateurs.

Pour les adresses ACS (Consumer) URL Validator(Validation d'URL ACS [Consommateur]) et ACS (Consumer) URL (URL ACS [Consommateur]), remplacez yourDomainPrefix et region par les valeurs de votre groupe d'utilisateurs. Recherchez-les dans la console Amazon Cognito sous l'onglet Nom de domaine de la page de gestion de votre groupe d'utilisateurs.

Modifier vos paramètres d'application OneLogin

1.    Sélectionnez Parameters (Paramètres).

Remarque : un paramètre (NameID [auparavant appelé Email]) est déjà répertorié ; cela est normal.

2.    Sélectionnez Add parameter (Ajouter un paramètre) pour créer un nouveau paramètre personnalisé.

3.    Dans la boîte de dialogue New Field (Nouveau champ), sous Field name (Nom de champ), saisissez http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier.

4.    Pour Flags (Indicateurs), cochez la case Include in SAML assertion (Inclure dans l'assertion SAML).

5.    Sélectionnez Save (Enregistrer).

6.    Pour Value (Valeur), sélectionnez Email dans la liste.

7.    Sélectionnez Save (Enregistrer).

Copier les métadonnées de votre fournisseur d'identité pour votre application OneLogin

1.    Sélectionnez SSO.

2.    Copiez l'URL sous Issuer URL (URL d'émetteur) dans le presse-papiers.

3.    Sélectionnez Save (Enregistrer) pour enregistrer toutes les modifications apportées à votre application OneLogin.

Configurer OneLogin en tant que fournisseur d'identité SAML dans Amazon Cognito

Pour plus d'informations, consultez la section Création et gestion d'un fournisseur d'identité SAML pour un groupe d'utilisateurs (AWS Management Console). Suivez les instructions de la rubrique Pour configurer un fournisseur d'identité SAML 2.0 dans votre groupe d'utilisateurs.

Lors de la création du fournisseur d'identité SAML, collez l'URL copiée à partir du champ Issuer URL (URL d'émetteur) dans le champ Document de métadonnées.

Mapper l'adresse e-mail fournie par le fournisseur d'identité à l'attribut du groupe d'utilisateurs

Pour plus d'informations, consultez la section Spécification des mappages d'attributs du fournisseur d'identité pour votre groupe d'utilisateurs. Suivez ensuite les instructions de la section Pour spécifier un mappage d'attributs de fournisseur SAML.

Lorsque vous ajoutez un attribut SAML sous Attribute mapping (Mappage d'attributs), saisissez http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress dans le champ Attribut de la SAML. Pour User pool attribute (Attribut du groupe d’utilisateurs), choisissez E-mail dans la liste.

Modifier les paramètres du client d'application dans Amazon Cognito

Remarque : ceci est un exemple de configuration élaboré à des fins de test. Dans le cas d'une configuration de production, il est recommandé d'utiliser le flux OAuth Authorization code grant (Octroi de code d'autorisation) pour les paramètres de votre application client. En utilisant ce flux, vous recevrez un code d'autorisation après votre authentification sous votre URL de redirection. Vous devez échanger le code d'autorisation contre des jetons Web JSON (JWTs) en effectuant une demande au point de terminaison TOKEN.

1.    Dans la page de gestion de la console Amazon Cognito pour votre groupe d'utilisateurs, sous Intégration d’application, sélectionnez Paramètres du client d'application. Ensuite, procédez comme suit :
Sous Fournisseurs d'identité activés, cochez la case Sélectionner tout.
Sous URL de rappel, saisissez une URL vers laquelle vous souhaitez que vos utilisateurs soient redirigés après s'être connectés. Pour le test, vous pouvez saisir n'importe quelle URL valide, par exemple https://www.exemple.com.
Pour URL de déconnexion, saisissez une URL vers laquelle vous souhaitez que vos utilisateurs soient redirigés après s'être déconnectés. Pour le test, vous pouvez saisir n'importe quelle URL valide, par exemple https://www.exemple.com.
Sous Flux OAuth autorisés, cochez au moins la case Autorisation implicite.
Sous Règles OAuth autorisées, cochez au moins les cases email et openid.

2.    Sélectionnez Save changes.

Pour plus d'informations, consultez la section Présentation des paramètres du client d'application.

Tester le point de terminaison de connexion

1.    Dans votre navigateur, saisissez l'adresse https://yourDomainPrefix.auth.region.amazoncognito.com/login?response_type=token&client_id=yourClientId&redirect_uri=redirectUrl.

Remarque : remplacez yourDomainPrefix et region par les valeurs de votre groupe d'utilisateurs. Recherchez-les dans la console Amazon Cognito sous l'onglet Nom de domaine de la page de gestion de votre groupe d'utilisateurs.

Remplacez yourClientId par l'ID de votre client d'application et remplacez redirectUrl par l'URL de retour de votre client d'application. Recherchez-les dans la console Amazon Cognito sous l'onglet Paramètres du client d'application de la page de gestion de votre groupe d'utilisateurs.

Pour plus d'informations, consultez les sections Comment configurer l'interface utilisateur web hébergée pour Amazon Cognito ? et Point de terminaison LOGIN.

2.    Sélectionnez OneLogin.

Remarque : si vous êtes redirigé vers l'URL de rappel de votre client d'application, cela signifie que vous êtes déjà connecté à votre compte OneLogin dans votre navigateur. Tout a été correctement configuré.

3.    Sur la page OneLogin, pour Username (Nom d'utilisateur), saisissez le nom d'utilisateur utilisé pour votre compte OneLogin.

4.    Sélectionnez Continue (Continuer).

5.    Sous Password (Mot de passe), saisissez votre mot de passe de compte OneLogin.

6.    Sélectionnez Continue (Continuer).

Vous serez alors redirigé vers l'URL de rappel de votre client d'application si tout est correctement configuré.