Einrichten der Authentifizierung externer Identitätsanbieter in Drupal
Mit der Authentifizierungsmethode „Externer Identitätsanbieter“ können Sie den Zugriff auf Ihre Drupal-REST-APIs mithilfe von Token von Drittanbietern wie Google, Azure AD, Keycloak, Okta oder GitLab sichern und einschränken. Durch die Integration mit Ihrem Identitätsanbieter stellt diese Methode sicher, dass nur authentifizierte Benutzer auf Ihre Drupal-APIs zugreifen können. Das dabei verwendete Zugriffstoken wird ausschließlich von einem externen Identitätsanbieter (IdP) bezogen. Drupal API-Authentifizierung Das Modul unterstützt Drupal 8, 9, 10 und 11.
- Verwenden von Composer
- Mit Drush
- Manuelle Installation
Voraussetzungen:
- REST DES TAGES: Dieses Modul bietet eine benutzerfreundliche Schnittstelle zur Konfiguration des REST-Moduls.
- Aktivieren Sie die folgenden Webdienstmodule aus dem Erweitern Abschnitt (/admin/modules) Ihrer Drupal-Site:
- JSON: API
- REST DES TAGES
- RESTful-Webdienste
- Serialisierung
API aktivieren und Methoden zuweisen:
- Der erste Schritt besteht darin, die API zu aktivieren und die für diese API zulässigen Methoden und Operationen zuzuweisen. Dies kann mithilfe der REST DES TAGES Modul oder durch direkte Änderung der Drupal-Konfiguration.
- Klicken Sie auf API aktivieren .
- Um die API mithilfe des REST-UI-Moduls zu aktivieren, klicken Sie auf das Einrichtung Schaltfläche (wie unten gezeigt).
- In unserem Beispiel müssen wir die /Entität/Benutzer API. Klicken Sie dazu davor auf die Option Aktivieren.
- Da unser Ziel darin besteht, einen Benutzer in Drupal zu erstellen, wählen Sie die folgenden Konfigurationen aus:
- Anleitung: jetzt lesen
- Format: JSON
- Authentifizierungsanbieter: rest_api_authentication
- Dadurch kann das miniOrange API-Authentifizierungsmodul die API authentifizieren. Klicken Sie auf das Konfiguration speichern um fortzufahren.
Konfigurationsschritte
1. Richten Sie die Authentifizierungsmethode des externen Identitätsanbieters ein:
- In diesem Schritt richten wir ein Externer Identitätsanbieter als API-Authentifizierung. Navigieren Sie dazu zum API-Authentifizierung Registerkarte des Moduls (/admin/config/people/rest_api_authentication/auth_settings).
- Der Grundlegende Einstellung, aktivieren Sie die Aktivieren Sie die Authentifizierung Umschalten.
- Geben Sie die Anwendungsname und wählen Sie Externer Identitätsanbieter von dem Authentifizierungsmethode .
- Scrollen Sie nach unten zum Konfiguration des externen Identitätsanbieters Abschnitt auf derselben Registerkarte.
- Geben Sie die Benutzerinfo-Endpunkt Ihres Identitätsanbieters in das angegebene Feld ein, damit das Modul mithilfe des bereitgestellten Tokens Benutzerdetails abrufen kann.
- Im BenutzernamensattributGeben Sie den Attributschlüssel oder Namen Ihres Identitätsanbieters ein, der den vom externen Anbieter gesendeten Benutzernamen enthält.
- Klicken Sie auf die Konfiguration speichern .
- Sie haben die Methode „Externer Identitätsanbieter“ erfolgreich konfiguriert.
Hinweis: Verwenden Sie bei der Authentifizierung der API den anwendungsspezifischen eindeutigen Header.
Erteilen von Rollenberechtigungen zum Erstellen von Benutzern
- Bei Bedarf können Sie auch Benutzern ohne Administratorrechte das Erstellen von Benutzern in Drupal erlauben. Weisen Sie dazu den gewünschten Rollen auf der Seite „Berechtigungen“ (/admin/people/permissions) Ihrer Drupal-Site die Berechtigung „Benutzer verwalten“ zu.
2. Beispiel:
- Zum besseren Verständnis betrachten wir als Beispiel das Hinzufügen einer auf externen Identitätsanbietern basierenden Authentifizierung zur API zum Erstellen von Benutzern in Drupal.
- Um einen Benutzer in Drupal zu erstellen, senden Sie eine POST-Anfrage zusammen mit dem Token, das Sie von Ihrem Identitätsanbieter erhalten haben.
Hinweis: Die /entity/user-API in Drupal wird zum Erstellen eines neuen Benutzers verwendet.
HTML-Anforderungsformat – Anforderung: POST /entity/user?_format=json Header: AUTH-METHOD: Anwendungs-ID Token: Akzeptieren: application/json Inhaltstyp: application/json Text: { "Name": { "Wert": " " }, "mail": { "value": " " }, "pass": { "value": " " }, "status": { "value": "1" } } CURL-Anforderungsformat - curl --location --request POST ' /entity/user?_format=json' \ --header 'AUTH-METHOD: Anwendungs-ID' \ --header 'Token: ' \ --header 'Akzeptieren: application/json' \ --header 'Inhaltstyp: application/json' \ --data-raw ' { "name": [ { "value": "Benutzername" } ], "mail": [ { "value": "email" } ], "pass": [ { "value": "Passwort" } ], "status": [ { "value": "1" } ] }
- Bei einer erfolgreichen Antwort werden die Details des von Ihnen erstellten Benutzers zurückgegeben (siehe Abbildung unten).
Herzlichen Glückwunsch! Sie haben die Methode „Externer Identitätsanbieter“ mithilfe des Drupal-API-Authentifizierungsmoduls erfolgreich eingerichtet.
Wenn die Konfiguration nicht erfolgreich war, kontaktieren Sie uns bitte unter drupalsupport@xecurify.com. Bitte fügen Sie einen Screenshot des Fehlerfensters bei. Wir helfen Ihnen dann bei der Lösung des Problems und führen Sie durch die Einrichtung.
