logo

Extra Block Types (EBT) - Neue Erfahrung im Layout Builder❗

Extra Block Types (EBT) - gestylte, anpassbare Blocktypen: Diashows, Registerkarten, Karten, Akkordeons und viele andere. Eingebaute Einstellungen fĂŒr Hintergrund, DOM Box, Javascript Plugins. Erleben Sie die Zukunft der Layouterstellung schon heute.

Demo EBT-Module EBT-Module herunterladen

❗Extra Absatztypen (EPT) - Erfahrung mit neuen AbsĂ€tzen

Extra Paragraph Types (EPT) - analoger, auf AbsÀtzen basierender Satz von Modulen.

Demo EPT-Module EPT-Module herunterladen

Scroll

Einrichtung der Basisauthentifizierung mit dem REST-API-Authentifizierungsmodul

21/05/2025, by Ivan

Die Basic Authentication ist eine sehr einfache und unkomplizierte Authentifizierungsmethode. Der Client sendet HTTP-Anfragen mit einem Authorization-Header, der den base64-kodierten Benutzernamen und das Passwort Ihrer Drupal-Seite enthÀlt.

Bei der Basic Authentication prĂŒft das miniOrange API Authentication-Modul zuerst den Benutzer anhand seines Drupal-Benutzernamens und -Passworts. Nur wenn der Benutzer authentifiziert ist, kann er die gewĂŒnschte Operation ausfĂŒhren. Dieses Modul ist kompatibel mit Drupal 7, Drupal 8, Drupal 9, Drupal 10 und Drupal 11.
 

  Download  

Einrichtungsvideo:

Voraussetzungen: Download und Installation:

  • Laden Sie das Drupal REST & JSON API Authentication-Modul herunter und installieren Sie es.
  • REST UI: Dieses Modul stellt eine BenutzeroberflĂ€che fĂŒr die Konfiguration des REST-Moduls bereit. 
  • Aktivieren Sie die folgenden Webservice-Module im Abschnitt „Erweitern“ (/admin/modules) Ihrer Drupal-Seite:
    • JSON: API
    • REST UI
    • RESTful Web Services
    • Serialization

    Drupal REST API authentication

Schritte zur Konfiguration der Basic Authentication Methode in Drupal:

  • Zum besseren VerstĂ€ndnis nehmen wir als Beispiel die HinzufĂŒgung der Basic Authentication zur Abfrage eines Nodes in Drupal per REST API.
  • Bitte beachten Sie, dass die /node/{node}-API von Drupal verwendet wird, um Informationen zu einem Drupal-Node abzurufen.

API aktivieren, Methoden und Operationen zuweisen:

  • Im ersten Schritt muss die API aktiviert und die erlaubten Methoden und Operationen zugewiesen werden. Dies kann ĂŒber das REST UI-Modul oder durch direkte Anpassung der Konfiguration erfolgen.
  • Um die API ĂŒber das REST UI-Modul zu aktivieren, klicken Sie auf die SchaltflĂ€che „Konfigurieren“ des REST UI-Moduls (siehe unten).

    Rest UI

  • In unserem Beispiel möchten wir die /node/{node}-API im Abschnitt Content aktivieren. Aktivieren Sie diese API ĂŒber die Option „Enable“ davor.

    REst GET

  • Da unser Ziel das Abrufen von Node-Informationen ist, wĂ€hlen Sie folgende Konfigurationen:
    • Methode: GET
    • Format: json
    • Authentifizierungsanbieter: rest_api_authentication.
  • Damit kann das miniOrange REST API Authentication-Modul Ihre API authentifizieren. Klicken Sie auf die SchaltflĂ€che Konfiguration speichern, um fortzufahren.

    Rest api basic auth

Schritte zur Aktivierung der Basic Authentication:

  • In diesem Schritt richten wir die Basic Authentication als API Authentication-Methode ein. Navigieren Sie dazu zum Tab API Authentication des REST API Authentication Moduls (/admin/config/people/rest_api_authentication/auth_settings)
    • Aktivieren Sie das KontrollkĂ€stchen Authentifizierung aktivieren und klicken Sie auf Einstellungen speichern oben.
    • Unterhalb der SchaltflĂ€che Einstellungen speichern wĂ€hlen Sie „Basic Authentication“ und klicken auf die SchaltflĂ€che Methode auswĂ€hlen.

Das war’s!!!
Jetzt können wir versuchen, Node-Informationen ĂŒber einen API-Call mit Basic Authentication abzurufen.

Beispiel:

  • Um Node-Informationen in Drupal abzurufen, mĂŒssen Sie eine GET-Anfrage zusammen mit dem Drupal-Benutzernamen und -Passwort des Benutzers stellen. Der Wert von Benutzername und Passwort muss base64-kodiert sein. Siehe unten das Format fĂŒr eine Anfrage.

    Anfrage: GET <your_drupal_base_url> /node/{node}?_format=json
    Header:     
          Authorization: Basic base64encoded <username:password>
          Accept: application/json
          Content-Type: application/json

    CURL-Anfrageformat-
    curl --location --request GET 'drupal_base_url/node/1?_format=json' \
    --header 'Accept: application/json' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Basic base64encoded <username:password'>

  • Sie können sich auch das Bild der Postman-Anfrage unten ansehen:

    REST API auth

  • Eine erfolgreiche Antwort gibt die Node-Informationen zurĂŒck, die Sie angefragt haben. (Siehe Bild unten)

Basic Auth

  • Falls Sie einen Fehler in der Antwort erhalten, können Sie die folgende Tabelle fĂŒr die Fehlerbeschreibung und mögliche Lösungen nutzen.

Fehler

Beschreibung

MISSING_AUTHORIZATION_HEADER

Sie erhalten diesen Fehler, wenn Sie keinen Authorization Header in der API-Anfrage mitsenden oder wenn dieser aus irgendeinem Grund vom Server entfernt wurde.

Beispiel:
{
  "status": "error",
  "error": "MISSING_AUTHORIZATION_HEADER",
  "error_description": "Authorization header not received."
}

INVALID_AUTHORIZATION_HEADER_TOKEN_TYPE

Sie erhalten diesen Fehler, wenn Sie den Authorization Header senden, aber nicht im gĂŒltigen Format.
Beispiel:
{
  "status": "error",
  "error": "INVALID_AUTHORIZATION_HEADER_TOKEN_TYPE",
  "error_description": "Authorization header must be the type of Basic Authentication."
}

USER_NAME_MISSING

Sie erhalten diesen Fehler, wenn das Modul den Benutzernamen in der API-Anfrage nicht finden kann.

Beispiel:
{
  "status": "error",
  "error": "USER_NAME_MISSING",
  "error_description": "Username Not Found"
}

INVALID_CREDENTIALS

Sie erhalten diesen Fehler, wenn entweder der Benutzername oder das Passwort falsch ist.

Beispiel:
{
  "status": "error",
  "error":        "INVALID_CREDENTIALS",
  "error_description": "Invalid username or password."
}