Authentification unique SAML (SSO) dans AWS Cognito à l'aide du plug-in Joomla IDP
Aperçu
L'authentification unique dans AWS Cognito à l'aide de Joomla IDP permet aux utilisateurs de se connecter à AWS Cognito à l'aide de Joomla en configurant AWS Cognito en tant que fournisseur de services (SP) et Joomla en tant que fournisseur d'identité SAML (IDP). Ce guide vous guidera pas à pas dans la configuration de l'authentification unique entre les deux plateformes.
Qu'est-ce qu'AWS Cognito ?
AWS Cognito est un service fourni par Amazon Web Services (AWS) qui propose l'authentification, l'autorisation et la gestion des utilisateurs pour les applications Web et mobiles. Il simplifie le processus d'ajout d'inscriptions, de connexions et de contrôles d'accès des utilisateurs à vos applications.
Installer le plugin Joomla SAML IDP
- Connectez-vous à votre site Joomla Administratrice console.
- Dans le menu bascule de gauche, cliquez sur Système, puis sous la section Installer, cliquez sur Extensions.
- Maintenant, cliquez sur Ou Rechercher un fichier pour localiser et installer le fichier du plugin téléchargé précédemment.
- L'installation du plugin est réussie. Cliquez maintenant sur Commencez à utiliser le plugin miniOrange SAML IDP pour configurer le plugin miniOrange Joomla IDP.
- Rendez-vous dans la section Plugin miniOrange Joomla IDP, naviguez jusqu'à Fournisseur d'identité languette.
- Ici, vous pouvez trouver l'URL/le fichier XML des métadonnées du fournisseur d'identité ou les points de terminaison tels que l'ID d'entité IDP, l'URL de connexion SAML, l'URL de déconnexion SAML (fonctionnalité Premium) et le certificat pour la configuration du fournisseur de services. Téléchargez les métadonnées XML en cliquant sur le bouton comme indiqué ci-dessous.
Étapes de configuration
Dans cette configuration, Joomla sert de référentiel pour stocker les utilisateurs, c'est-à-dire qu'il agira comme IDP pendant AWSCognito c'est là que les utilisateurs se connecteront en utilisant leurs informations d'identification de Joomla où Plugin SSO IDP SAML pour Joomla sera installé.
Étape 1 : Configurer AWS Cognito en tant que SP (fournisseur de services)
- Tout d'abord, allez à Console AWS Cognito et inscrivez-vous/connectez-vous à votre compte pour configurer AWS Cognito.
- Allez dans Services > Sécurité, identité et conformité > Cognito.
- Cliquez à nouveau sur Gérer les groupes d'utilisateurs, puis Créer un pool d'utilisateurs.
- Entrez un nom pour le nom du pool. Cliquez sur Vérifier les valeurs par défaut, puis Créer un pool.
- Après avoir créé un pool, conservez le ID de groupe pratique ou vous pouvez le noter afin que cela vous aide à configurer votre IdP.
- Dans le volet de gauche, cliquez sur Nom de domaine sous Intégration d'application. Saisissez un préfixe de domaine disponible, puis enregistrez-le. Conservez ce domaine, il sera nécessaire dans l'URL ACS pour configurer votre IDP.
- Dans le volet de gauche, cliquez sur Fournisseur d'identité sous la Fédération. Puis Sélectionnez SAML.
- Téléchargez les métadonnées Joomla IDP, nommez-les, puis cliquez sur Créer un fournisseur.
- Ajoute ça
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
attribut dans le champ de texte d'attribut SAML et sélectionnez Attribut du pool d'utilisateurs comme E-mail.
- Cliquez à nouveau sur Enregistrer.
Étape 2 : Configuration de Joomla comme fournisseur d’identité
- Dans le plugin miniOrange Joomla SAML IDP, accédez à l’onglet Fournisseur de services.
- Dans le champ ID d'entité SP, saisissez urn:amazon:cognito:sp:(YourUserPoolId) , (supprimez la balise d'ancrage (<>) et ajoutez votre identifiant de pool d'utilisateurs que vous avez déjà copié ci-dessus lors de la création du pool.
- Remplacez « yourUserPoolId » par l’ID de votre pool d’utilisateurs Amazon Cognito.
- Pour trouver l'ID du groupe d'utilisateurs :
- Connectez-vous à AWS Management Console en tant qu'administrateur.
- Accédez à Services > Sécurité, identité et conformité, puis sélectionnez Cognito.
- Sélectionnez Gérer les pools d’utilisateurs, puis le pool d’utilisateurs que vous souhaitez utiliser dans la configuration.
- Recherchez l’identifiant du pool en haut de la liste.
- Dans le champ URL ACS, saisissez :
https://YourSubdomain.amazoncognito.com/saml2/idpresponse
Et enregistrez-le. - Veuillez remplacer votre sous-domaine par lequel vous avez créé à l'étape ci-dessus.
- Vous pouvez également trouver votre sous-domaine en suivant les étapes ci-dessous :
- Pour trouver votre sous-domaine :
- Cliquez sur Nom de domaine sous Intégration d’application.
- Copiez l'URL entière et remplacez-la par VotreSous-domaine dans l'URL ACS (veuillez supprimer tous les espaces ici).
- Cochez la case Signature de l'assertion pour signer l'assertion et cliquez sur le bouton Enregistrer.
- Pour mapper les attributs, cliquez sur l'onglet Mappage. Sélectionnez votre fournisseur de services dans la liste déroulante.
- Ajoute ça
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
Entrez la valeur dans le champ de texte Nom de l'attribut et sélectionnez la valeur de l'attribut dans le menu déroulant Sélectionner l'adresse e-mail. Cliquez sur le bouton Enregistrer le mappage.
Étape 3 : Configurer le client d'application dans AWS Cognito
- Cliquez maintenant sur Clients d'application sous Paramètres généraux. Cliquez sur Ajouter un client d'application.
- Entrez le nom du client d'application. Par exemple, JoomlaIdP. Décochez la case Générer le secret client et cliquez sur le bouton Créer un client d'application en bas.
- Cliquez maintenant sur les paramètres du client d’application sous Intégration d’application dans le volet de gauche.
- Cochez la case Sélectionner tout, saisissez les URL de rappel et les URL de déconnexion. Sélectionnez Octroi implicite sous Flux OAuth autorisés. Cochez maintenant la case E-mail et OpenID sous Étendues OAuth autorisées et cliquez sur le bouton Enregistrer les modifications dans le coin inférieur droit.
- Cliquez maintenant sur Lancer l’interface utilisateur hébergée en bas pour effectuer l’authentification unique.
- Vous pouvez également utiliser l'URL SSO suivante pour effectuer le SSO.
https://(domain_prefix).auth.(region).amazoncognito.com/login?
response_type=token&client_id=(app client id)&redirect_uri=(your redirect URI)
