SSO sans tête Drupal utilisant le protocole OAuth
Marché
La solution SSO headless basée sur OAuth de miniOrange connecte efficacement le backend Drupal à un serveur OAuth via le protocole OAuth pour l'authentification. Une fois le processus SSO terminé, le module génère un jeton Web JSON (JWT) pour l'utilisateur connecté et le transmet au site frontend. (Facultatif : ce jeton peut être utilisé pour valider d'autres API Drupal.) Ce guide met en évidence l'essentiel de la manière dont le SSO sans tête est implémenté à la fois au niveau du backend et du frontend.
Commençons d’abord par le backend.Pré-requis :
- Module client OAuth miniOrange : Ce module active le SSO entre le site Drupal et le fournisseur OAuth/OIDC.
- Module d'authentification API REST et JSON :Une fois le SSO effectué, ceci module aide à générer le JWT et à envoyer ce jeton à l'application frontend. (Facultatif : pour authentifier d'autres API Drupal, transmettez le même JWT dans l'en-tête avec la requête API, et le module d'authentification REST & JSON API validera ce JWT.)
Configurations du backend
- Module client OAuth miniOrange : Suivez cette guide d'installation pour établir la connexion entre le site Drupal et le fournisseur OAuth/OIDC souhaité.
- Module d'authentification API REST et JSON :
- Pour authentifier les API Drupal à l'aide du JWT, configurez le Authentification JWT méthode dans le module. Suivez ceci guide d'installation.
- Configurer l'URL de redirection de l'application frontend :
- Accédez à la Paramètres avancés onglet du module Authentification API REST & JSON.
- Dans l' Configurations de points de terminaison de jetons pour l'authentification unique sans tête Pour plus d'informations, saisissez le point de terminaison de l'application front-end, vers lequel le navigateur redirigera après le processus d'authentification unique (SSO), avec un paramètre de code. Cliquez ensuite sur Enregistrer la configuration du point de terminaison du jeton .
- Flux de connexion :
- Lancer la connexion à partir de l'application frontale de l'utilisateur. (en utilisant l'URL- {drupal-base-url}/moLogin)
- L'utilisateur est redirigé vers le serveur configuré.
- Saisissez les informations d'identification de l'utilisateur pour vous authentifier.
- Après une authentification réussie, l'utilisateur est redirigé vers le frontend avec le code comme paramètre de requête dans l'URL.
- Utilisez le code obtenu à l'étape précédente pour envoyer une requête au point de terminaison du jeton Drupal. Pour cela, suivez les étapes ci-dessous :
- Localisez le point de terminaison du jeton dans le Configurations de points de terminaison de jetons pour l'authentification unique sans tête détails. Reportez-vous à l'image suivante pour cela.
- Exemple pour faire une requête POST avec le code reçu :
- Supposons qu'un utilisateur reçoive un code (received_code) sur le frontend.
- Maintenant, utilisez le format ci-dessous pour faire une requête POST en utilisant ce code.
Découvrir les scènes du frontend
Cette section révèle tout ce qu'un utilisateur doit faire côté frontend.
Commençons:
HTTP : POST https://{drupal_base_url}/getToken code=(received_code)
À noter: Pour voir le format des requêtes API qui incluent le jeton JWT dans l'en-tête, reportez-vous à ceci guide d'installation.
Articles Relatifs
Merci pour votre réponse. Nous reviendrons vers vous bientôt.
Quelque chose s'est mal passé. Veuillez soumettre à nouveau votre requête

Contactez-Nous