Configurer l'authentification du fournisseur d'identité externe dans Drupal
La méthode d'authentification par fournisseur d'identité externe vous permet de sécuriser et de restreindre l'accès à vos API REST Drupal à l'aide de jetons provenant de fournisseurs tiers tels que Google, Azure AD, Keycloak, Okta ou GitLab. En s'intégrant à votre fournisseur d'identité, cette méthode garantit que seuls les utilisateurs authentifiés peuvent accéder à vos API Drupal. Le jeton d'accès utilisé est exclusivement obtenu auprès d'un fournisseur d'identité externe (IdP). Le module d'authentification des API Drupal est compatible avec Drupal 8, 9, 10 et 11.
- Utiliser le compositeur
- Utiliser Drush
- Installation manuelle
Conditions préalables:
- Interface utilisateur REST: Ce module fournit une interface conviviale pour configurer le module REST.
- Activez les modules de services Web suivants à partir du étendre section (/admin/modules) de votre site Drupal :
- JSON : API
- Interface utilisateur REST
- Services Web RESTful
- La sérialisation
Activer l'API et attribuer des méthodes :
- La première étape consiste à activer l'API et à lui attribuer les méthodes et opérations autorisées. Pour ce faire, utilisez l'option Interface utilisateur REST module, ou en modifiant directement la configuration Drupal.
- Cliquez sur le Activer l'API .
- Pour activer l'API à l'aide du module REST UI, cliquez sur le Configurer bouton (comme indiqué ci-dessous).
- Dans notre exemple, nous devons activer le /entité/utilisateur API. Pour ce faire, cliquez sur l'option Activer devant.
- Puisque notre objectif est de créer un utilisateur dans Drupal, sélectionnez les configurations suivantes :
- Préparation: POSTEZ
- Format: JSON
- Fournisseur d'authentification : authentification_rest_api
- Cela permet au module d'authentification de l'API miniOrange d'authentifier l'API. Cliquez sur le Enregistrer la configuration pour continuer.
Étapes de configuration
1. Configurer la méthode d'authentification du fournisseur d'identité externe :
- Dans cette étape, nous allons configurer Fournisseur d'identité externe comme une authentification API. Pour ce faire, accédez à Authentification API onglet du module (/admin/config/people/rest_api_authentication/auth_settings).
- Sous Configuration de base, activez le Activer l'authentification basculer.
- Entrer le Nom de l'application et sélectionnez Fournisseur d'identité externe du Méthode d'authentification .
- Faites défiler jusqu'à la Configuration du fournisseur d'identité externe section sur le même onglet.
- Entrer le Point de terminaison des informations utilisateur de votre fournisseur d'identité dans le champ donné, afin que le module puisse récupérer les détails de l'utilisateur à l'aide du jeton fourni.
- Dans l' Attribut de nom d'utilisateur, saisissez la clé d'attribut ou le nom de votre fournisseur d'identité qui contient le nom d'utilisateur envoyé par le fournisseur externe.
- Cliquez sur Enregistrer la configuration .
- Vous avez configuré avec succès la méthode du fournisseur d’identité externe.
Remarque : Utilisez l’en-tête unique spécifique à l’application lors de l’authentification de l’API.
Accorder des autorisations de rôle pour créer des utilisateurs
- Si nécessaire, vous pouvez autoriser les rôles Drupal non administrateurs à créer des utilisateurs. Pour cela, attribuez l'autorisation « Administrer les utilisateurs » aux rôles souhaités depuis la page « Autorisations » (/admin/people/permissions) de votre site Drupal.
2. Exemple:
- Pour une meilleure compréhension, prenons un exemple d’ajout d’une authentification basée sur un fournisseur d’identité externe à l’API de création d’utilisateur dans Drupal.
- Pour créer un utilisateur dans Drupal, envoyez une requête POST avec le jeton reçu de votre fournisseur d'identité.
Remarque : L’API /entity/user de Drupal est utilisée pour créer un nouvel utilisateur.
Format de requête HTML - Requête : POST /entity/user?_format=json En-tête : AUTH-METHOD : application_id Jeton : Accepter : application/json Type de contenu : application/json Corps : { "nom" : { "valeur" : " " }, "mail": { "valeur": " " }, "pass": { "valeur": " " }, "status": { "value": "1" } } Format de requête CURL - curl --location --request POST ' /entity/user?_format=json' \ --header 'AUTH-METHOD: application_id' \ --header 'Token: ' \ --header 'Accepter : application/json' \ --header 'Type de contenu : application/json' \ --data-raw ' { "name": [ { "value": "Nom d'utilisateur" } ], "mail": [ { "value": "email" } ], "pass": [ { "value": "Mot de passe" } ], "status": [ { "value": "1" } ] }
- Une réponse réussie renverra les détails de l'utilisateur que vous avez créé (voir l'image ci-dessous).
Félicitations ! Vous avez correctement configuré la méthode du fournisseur d'identité externe à l'aide du module d'authentification de l'API Drupal.
Si la configuration a échoué, veuillez nous contacter à l'adresse drupalsupport@xecurify.com . Merci d'inclure une capture d'écran de la fenêtre d'erreur ; nous vous aiderons à résoudre le problème et vous guiderons tout au long de l'installation.
Merci pour votre réponse. Nous reviendrons vers vous bientôt.
Quelque chose s'est mal passé. Veuillez soumettre à nouveau votre requête
