Passer au contenu

Comment configurer mon Application Load Balancer afin qu’il authentifie les utilisateurs via un groupe d'utilisateurs Amazon Cognito sur un autre compte AWS ?

Lecture de 6 minute(s)
0

Je souhaite intégrer un Application Load Balancer à un groupe d'utilisateurs Amazon Cognito pour l'authentification utilisateur.

Brève description

Pour configurer l'authentification utilisateur à l'aide d'un Application Load Balancer et d'un groupe d'utilisateurs Amazon Cognito, procédez comme suit :

  1. Créez un Application Load Balancer.
  2. Obtenez le nom DNS de votre Application Load Balancer dans le compte B.
  3. Créez et configurez un groupe d'utilisateurs Amazon Cognito.
  4. Configurez l'Application Load Balancer.
  5. Testez la configuration.

Résolution

Créer un Application Load Balancer

Remarque : Si vous avez déjà configuré un Application Load Balancer, passez à la section Obtenir le nom DNS de votre Application Load Balancer.

Procédez comme suit :

  1. Créez un Application Load Balancer.
  2. Créez un écouteur HTTPS pour votre Application Load Balancer.

Remarque : Seuls les écouteurs HTTPS prennent en charge les types d’actions de règle authenticate-cognito et authenticate-oidc.

Obtenir le nom DNS de votre Application Load Balancer dans le compte B

Procédez comme suit :

  1. Ouvrez la console Amazon Elastic Compute Cloud (Amazon EC2).
  2. Dans le volet de navigation, sous Équilibrage de charge, sélectionnez Équilibreurs de charge.
  3. Sélectionnez votre Application Load Balancer.
  4. Dans l'onglet Détails, notez le nom DNS de votre équilibreur de charge à utiliser ultérieurement.

Créer et configurer un groupe d'utilisateurs Amazon Cognito

Procédez comme suit :

  1. Ouvrez la console Amazon Cognito.
  2. Dans le volet de navigation, choisissez Créer un groupe d’utilisateurs.
    Remarque : Lorsque vous créez le groupe d'utilisateurs, configurez les paramètres souhaités pour la production. Une fois que vous avez créé le groupe d'utilisateurs, vous ne pouvez pas modifier certains paramètres du groupe d'utilisateurs. Pour plus d’informations, consultez la section Comment modifier les attributs d’un groupe d’utilisateurs Amazon Cognito après sa création ?
  3. Configurez un client d'application pour votre groupe d'utilisateurs.
    Lorsque vous configurez le client d'application, sélectionnez le bouton radio Générer un secret de client. Pour plus d'informations, consultez la section Préparation à l'utilisation d'Amazon Cognito.
  4. Dans le volet de navigation, choisissez Groupes d'utilisateurs, puis sélectionnez votre groupe d'utilisateurs. Notez l'ID du groupe d'utilisateurs à utiliser ultérieurement.
  5. Sélectionnez l’onglet Intégration d’applications pour votre groupe d'utilisateurs, puis ajoutez un domaine pour votre groupe d'utilisateurs.
  6. Dans l'onglet Intégration d'application de votre groupe d'utilisateurs, sélectionnez votre client d'application dans la section Clients d'application et analytique.
  7. Sur la page Client d'application, sous Informations sur le client d'application, notez l'ID client à utiliser ultérieurement.
  8. Dans la section Interface utilisateur hébergée, sélectionnez Modifier.
  9. Sélectionnez Ajouter une URL de rappel, puis saisissez https://load-balancer-dns-name/oauth2/idpresponse avec le nom de votre DNS.Si vous avez utilisé un enregistrement CNAME pour mapper un domaine personnalisé à votre Application Load Balancer, saisissez https://CNAME/oauth2/idpresponse avec le nom de votre domaine personnalisé.
    Remarque : Le nom DNS ne doit pas contenir de lettres majuscules.
  10. Sélectionnez Ajouter une URL de déconnexion, puis saisissez l'URL vers laquelle vous souhaitez rediriger vos utilisateurs une fois qu'ils se sont déconnectés. Pour tester la redirection, vous pouvez saisir n'importe quelle URL valide, telle que https://example.com/.
  11. Dans Fournisseurs d'identité, sélectionnez Groupe d’utilisateurs Cognito.
  12. Dans Types d’octrois OAuth 2.0, sélectionnez Octroi de code d'autorisation. Sélectionnez d'autres types d'autorisations OAuth pour votre cas d'utilisation.
  13. Dans Portées OpenID Connect, sélectionnez OpenID. La portée OpenID renvoie un jeton d'identification. Sélectionnez des portées OpenID Connect (OIDC) supplémentaires pour votre cas d'utilisation.
  14. Sélectionnez Enregistrer les modifications.

Pour plus d'informations, consultez les sections Mise à jour de la configuration du groupe d'utilisateurs et du client d'application et Connexion au groupe d'utilisateurs via des fournisseurs d’identité tiers.

Configurer votre Application Load Balancer

Procédez comme suit :

  1. Ouvrez la console Amazon EC2.
  2. Dans le volet de navigation, sous Équilibrage de charge, sélectionnez Équilibreurs de charge.
  3. Sélectionnez votre Application Load Balancer.
  4. Dans l'onglet Écouteurs et règles, sélectionnez le protocole HTTPS.
  5. Choisissez Gérer les règles, puis Modifier les règles.
  6. Dans la section Règles relatives aux écouteurs, sélectionnez la règle par défaut que vous souhaitez mettre à jour.
  7. Sélectionnez Action, puis Modifier les règles.
  8. Configurer les paramètres suivants pour la règle par défaut de l'écouteur HTTPS :
    Dans Authentification, sélectionnez Utiliser OpenID ou Amazon Cognito.
    Dans Fournisseur d’identité, sélectionnez Amazon Cognito.
    Pour le groupe d'utilisateurs, sélectionnez votre ID du groupe d'utilisateurs.
    Pour le client d'application, sélectionnez votre ID client.
    Développez Paramètres d'authentification avancés.
    Attribuez un nom au cookie de session.
    Définissez le délai d'expiration de session. La valeur par défaut est de 7 jours.
    Pour Portée, saisissez les portées que vous avez configurées pour le client d'application de votre groupe d'utilisateurs, séparées par des espaces. Vous trouverez les portées dans la configuration OIDC de votre groupe d'utilisateurs. Par exemple, si la valeur scopes_supported est ["openid","email","phone","profile"], saisissez le profil téléphonique d’e-mail openid.
    Dans Action sur une requête non authentifiée, conservez la valeur par défaut.
    (Facultatif) Développer Paramètres de demande supplémentaires - facultatif pour ajouter des paramètres à un fournisseur d'identité, tel que Cognito, lors de l'authentification. Par exemple, si le groupe d'utilisateurs Cognito dispose de Google comme fournisseur d'identité, vous pouvez ajouter un paramètre supplémentaire {Key: identity_provider, Value: Google}. Pour plus d'informations sur les paramètres de demande, consultez la section Paramètres de demande.
    Dans Actions de routage, sélectionnez Transmettre au groupe cible, puis choisissez les groupes cibles.
    (Facultatif) Dans Permettre la permanence du groupe cible, sélectionnez Activer la permanence du groupe cible lorsque votre cas d'utilisation l'exige.
  9. Configurez les paramètres de l'écouteur sécurisé suivants :
    Dans Stratégie de sécurité, choisissez la stratégie de sécurité adaptée à votre cas d'utilisation.
    Dans Certificat de serveur SSL/TLS par défaut, choisissez votre source de certificat.
  10. Sélectionnez Enregistrer les modifications.

Tester la configuration

Dans votre navigateur Web, saisissez l'une des URL suivantes :

  • https://load-balancer-dns-name/
  • https://CNAME/

Remarque : Remplacez load-balancer-dns-name par votre nom DNS et CNAME par votre domaine personnalisé.

Lorsque vous saisissez l’URL, vous êtes redirigé vers l'interface utilisateur Web hébergée par Amazon Cognito pour votre groupe d'utilisateurs. Une fois que les utilisateurs se sont connectés et que le groupe d'utilisateurs les a authentifiés, ils sont redirigés vers la cible.

Informations connexes

Commencer à utiliser les Application Load Balancer

Simplifier la connexion grâce à l’authentification intégrée de l’Application Load Balancer

Règles d’écouteur pour votre Application Load Balancer

Flux d’authentification de l’IdP du groupe d’utilisateurs OIDC

AWS OFFICIELA mis à jour il y a 5 mois