Résultats de recherche :

×

S'inscrire Contactez-Nous

SSO sans tête Drupal utilisant le protocole OAuth

La solution d'authentification unique (SSO) headless de miniOrange, basée sur OAuth, connecte efficacement le backend Drupal à un serveur OAuth via le protocole OAuth. Une fois l'authentification unique terminée, le module génère un jeton Web JSON (JWT) pour l'utilisateur connecté et le transmet au site frontend. (Optionnel : ce jeton peut servir à valider d'autres API Drupal.) Ce guide explique en détail le fonctionnement de l'authentification unique headless, tant côté backend que côté frontend.

Commençons d’abord par le backend.

  • 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.)
  • 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.
    Segmentation avancée
    • 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 .
    • Configuration du point de terminaison du jeton pour l'authentification unique sans tête

      Cette section révèle tout ce qu'un utilisateur doit faire côté frontend.

      Commençons:

      • 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.
          Configuration du point de terminaison du jeton pour l'authentification unique sans tête
          • 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.
            •                     HTTP : POST https://{drupal_base_url}/getToken code=(received_code)
              
                              
        • Le point de terminaison du jeton validera le code.
        • Si le code est valide, le point de terminaison du jeton fournit un JWT généré pour cet utilisateur connecté particulier (notez que le code est à usage unique, il ne peut donc pas être utilisé à nouveau pour obtenir un JWT.) Maintenant, utilisez ce JWT pour authentifier les API suivantes.
        • Remarque : Pour connaître le format des requêtes API incluant le jeton JWT dans l’en-tête, reportez-vous à ce guide de configuration.

ADFS_sso ×
Bonjour!

Besoin d'aide? Nous sommes ici !

soutenez