Comment puis-je configurer Google en tant que fournisseur d'identité fédéré dans un groupe d'utilisateurs Amazon Cognito ?

Lecture de 7 minute(s)
0

Je souhaite utiliser Google en tant que fournisseur d'identité (IdP) fédéré dans un groupe d'utilisateurs Amazon Cognito.

Résolution

Les groupes d'utilisateurs Amazon Cognito permettent les connexions via un tiers (fédération), y compris par le biais d'un IdP social tel que Google ou Facebook. Pour plus d'informations, reportez-vous à Ajout de fournisseurs d'identité sociaux à un groupe d'utilisateurs.

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

  1. Créez un groupe d'utilisateurs.
    Remarque : l'attribut standard e-mail est sélectionné par défaut lors de la création. Pour plus d'informations, reportez-vous à Attributs de groupe d'utilisateurs.
  2. Créez un client d'application dans votre groupe d'utilisateurs. Pour plus d'informations, reportez-vous à Ajout d'une application pour activer l'interface utilisateur web hébergée.
  3. Ajoutez un nom de domaine pour votre groupe d'utilisateurs.

Création d’un projet de console d'API Google

Si vous avez déjà un projet, créez-en un de nouveau :

  1. Connectez-vous à la console API Google à l'aide de votre compte Google. Pour plus d'informations, reportez-vous à Gestion des API dans la console API du site web d'aide de Google.
  2. Sur le tableau de bord (API et services), choisissez CRÉER.
  3. Sous Nouveau projet, saisissez un nom de projet.
  4. Pour Emplacement, choisissez PARCOURIR, puis sélectionnez un emplacement.
  5. Sélectionnez CRÉER.

Pour plus d'informations, consultez la documentation en ligne Se connecter avec Google sur le site web de Google Identity.

Configuration de l'écran de consentement OAuth

  1. Dans la console API Google, dans le volet de navigation de gauche, choisissez l'écran de consentement OAuth.
  2. Remplissez le formulaire de l'écran de consentement. Au minimum, spécifiez les informations suivantes :
    Dans le champ Nom de l'application, saisissez un nom.
    Dans le champ Domaines autorisés, saisissez amazoncognito.com.
    Important : vous devez saisir ce domaine Amazon Cognito, sinon vous ne pourrez pas l'utiliser ultérieurement lors de la création d'un ID client OAuth.
  3. Choisissez Enregistrer. Vous êtes redirigé vers la page des informations d'identification.

Pour plus d'informations, reportez-vous à Compléter l'écran de consentement OAuth sur le site web de Google Workspace.

Obtention des informations d'identification du client OAuth 2.0

  1. Dans la console Google API, sur la page Informations d'identification, choisissez Créer des informations d'identification. Choisissez ensuite un ID de client OAuth.
  2. Sur la page Créer l'ID client OAuth, pour Type d'application, sélectionnez Application web.
  3. Procédez comme suit :
    Saisissez un nom pour votre ID client OAuth.
    Pour les origines JavaScript autorisées, saisissez votre domaine Amazon Cognito. Par exemple : https://yourDomainPrefix.auth.region.amazoncognito.com.
    Remarque : remplacez yourDomainPrefix et region par les valeurs de votre groupe d'utilisateurs. Vous trouverez ces valeurs dans la console Amazon Cognito, sur la page Nom de domaine de votre groupe d'utilisateurs.
    Pour les URI de redirection autorisés, saisissez https://yourDomainPrefix.auth.region.amazoncognito.com/oauth2/idpresponse.
    Remarque : remplacez yourDomainPrefix et region par les valeurs de votre groupe d'utilisateurs. Reportez-vous à l'étape précédente pour plus d'informations.
  4. Dans la boîte de dialogue client OAuth, recherchez l'ID client et la clé secrète client, puis notez-les pour plus tard. Vous en aurez besoin pour configurer Google dans votre groupe d'utilisateurs Amazon Cognito.

Pour plus d'informations, reportez-vous à Utiliser OAuth 2.0 pour accéder aux API Google sur le site web de Google Identity.

Configuration de Google en tant qu'IdP fédéré dans votre groupe d'utilisateurs

  1. Dans la console Amazon Cognito, choisissez Groupes d'utilisateurs.
  2. Sélectionnez le groupe d'utilisateurs que vous souhaitez utiliser.
  3. Choisissez l'onglet Expérience de connexion.
  4. Sous Connexion au fournisseur d'identité fédéré, choisissez Ajouter un fournisseur d'identité.
  5. Sélectionnez Google. Ensuite, sous Configurer la fédération Google avec ce groupe d'utilisateurs :
    Pour ID du client, collez l'ID client que vous avez noté à l'étape précédente.
    Dans le champ Clé secrète client, collez la clé secrète du client indiquée à l'étape précédente.
    Pour Portées autorisées, saisissez l'adresse e-mail de profil OpenID.
  6. Sous Mapper les attributs entre Google et votre groupe d'utilisateurs :
    Pour l'attribut Groupe d'utilisateurs de l'attribut e-mail, mappez-le à l'attribut Google de l'adresse e-mail.
    Choisissez Ajouter un autre attribut, puis mappez l'attribut Groupe d'utilisateurs du nom d'utilisateur à l'attribut Google du nom d'utilisateur.
  7. Choisissez Ajouter un fournisseur d'identité.

Modification des paramètres du client d'application pour votre groupe d'utilisateurs

Remarque : dans les paramètres du client d'application, les attributs du groupe d'utilisateurs mappés doivent être accessibles en écriture. Pour plus d'informations, reportez-vous à Spécification des mappages d'attributs du fournisseur d'identité pour un groupe d'utilisateurs.

  1. Dans la console Amazon Cognito, choisissez votre groupe d'utilisateurs.
  2. Choisissez l'onglet Intégration d'application.
  3. Sous Liste des clients d'application, sélectionnez Créer un client d'application.
  4. Pour le type d'application, sélectionnez Client public. Saisissez ensuite le nom du client d'application.
    Pour Flux d'authentification, sélectionnez ALLOW_USER_PASSWORD_AUTH et ALLOW_REFRESH_TOKEN_AUTH.
    Dans le champ URL de rappel autorisée, saisissez l'URL vers laquelle vous souhaitez rediriger vos utilisateurs une fois connectés. Pour l'étape de test, saisissez une URL valide, telle que https://www.exemple.com/.
    Pour URL de déconnexion, saisissez l'URL vers laquelle vous souhaitez rediriger vos utilisateurs après leur déconnexion. Pour l'étape de test, saisissez une URL valide, telle que https://www.exemple.com/.
    Dans le champ Fournisseurs d'identité, sélectionnez Groupe d'utilisateurs Cognito et Google.
    Dans le champ Type d'octroi OAuth 2.0, sélectionnez Octroi implicite.
    Dans le champ Étendues OpenID Connect, sélectionnez e-mail, openid et profil.
    Important :
    le flux d'octroi OAuth implicite est destiné à des fins de test uniquement. Pour les systèmes de production, il est recommandé d'utiliser l'octroi de code d'autorisation.
  5. Choisissez Créer un client d'application.

Pour plus d'informations, reportez-vous à Terminologie des paramètres du client d'application.

Création de l'URL de point de terminaison

Utilisez les valeurs de votre groupe d'utilisateurs pour générer l’URL du point de terminaison de connexion pour l'interface utilisateur web hébergée par Amazon Cognito : 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. Vous trouverez ces valeurs dans la console Amazon Cognito, sur la page Nom de domaine de votre groupe d'utilisateurs. Remplacez yourClientId par l'ID du client de votre application Amazon Cognito, et remplacez redirectUrl par l'URL de rappel de votre client d'application. Vous trouverez ces valeurs dans la console Amazon Cognito, sur la page Paramètres du client d'application de votre groupe d'utilisateurs.

Pour plus d'informations, reportez-vous à Comment puis-je configurer l'interface utilisateur web hébergée pour Amazon Cognito ? et Point de terminaison de connexion.

Test de l'URL de point de terminaison

  1. Saisissez l'URL du point de terminaison de connexion que vous avez créée dans votre navigateur web.
  2. Sur la page web du point de connexion, sélectionnez Continuer avec Google.
    Remarque : si vous êtes redirigé vers l'URL de rappel du client d’application Amazon Cognito, vous êtes déjà connecté à votre compte Google dans votre navigateur. Les jetons du groupe d'utilisateurs apparaissent dans l'URL de la barre d'adresse de votre navigateur web.
  3. Sous Se connecter avec Google, sélectionnez votre compte Google et connectez-vous.

Une fois l'authentification réussie, vous êtes redirigé vers l'URL de rappel de votre client d'application Amazon Cognito. Les jetons web JSON (JWT) émis par le groupe d'utilisateurs apparaissent dans l'URL de la barre d'adresse de votre navigateur web.
Remarque : dans une application web réelle, l'URL du point de terminaison de connexion est générée par un kit SDK JavaScript. De plus, les jetons JWT sont analysés dans l'URL.

Informations connexes

Ajout de la connexion du groupe d'utilisateurs via un tiers

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 10 mois