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 obtenu auprès d'un fournisseur d'identité externe (IdP). Authentification API Drupal le module prend en charge 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 Configurez 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.
À noter: 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é.
À noter: L'API /entity/user dans 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 n'a pas réussi, veuillez nous contacter à drupalsupport@xecurify.comVeuillez inclure une capture d'écran de la fenêtre d'erreur et nous vous aiderons à résoudre le problème et vous guiderons tout au long de la configuration.
Merci pour votre réponse. Nous reviendrons vers vous bientôt.
Quelque chose s'est mal passé. Veuillez soumettre à nouveau votre requête
