logo

Extra Block Types (EBT) - New Layout Builder experience❗

Extra Block Types (EBT) - styled, customizable block types: Slideshows, Tabs, Cards, Accordions and many others. Built-in settings for background, DOM Box, javascript plugins. Experience the future of layout building today.

Demo EBT modules Download EBT modules

❗Extra Paragraph Types (EPT) - New Paragraphs experience

Extra Paragraph Types (EPT) - analogical paragraph based set of modules.

Demo EPT modules Download EPT modules

Scroll

Basisverificatie instellen met de REST API Authentication module

03/09/2025, by Ivan

Basisverificatie is een zeer eenvoudige en rechtlijnige verificatiemethode. De client stuurt HTTP-verzoeken met een Authorization-header die een base64-gecodeerde gebruikersnaam en wachtwoord van je Drupal-site bevat.

Bij Basic Authentication zal de miniOrange API authenticatie-module de gebruiker eerst verifiëren met zijn Drupal-gebruikersnaam en -wachtwoord. Als de gebruiker geverifieerd is, kan hij pas die operatie uitvoeren. Deze module is compatibel met Drupal 7, Drupal 8, Drupal 9, Drupal 10 en Drupal 11.
 

  Downloaden  

Installatievideo:

Vereisten: Download en Installatie:

  • Download en installeer de Drupal REST & JSON API Authentication-module.
  • REST UI: Deze module biedt een gebruikersinterface voor het configureren van de REST-module. 
  • Schakel de volgende Web Services-modules in via het gedeelte Uitbreiden (/admin/modules) van je Drupal-site:
    • JSON: API
    • REST UI
    • RESTful Web Services
    • Serialization

    Drupal REST API authenticatie

Stappen om de Basic Authentication methode in Drupal te configureren:

  • Voor een beter begrip nemen we een voorbeeld van het toevoegen van Basic Authentication om een node in Drupal via REST API op te halen.
  • Let op dat de /node/{node} API van Drupal wordt gebruikt om informatie over een Drupal-node op te halen.

Schakel de API in, wijs methoden en bewerkingen toe als volgt:

  • De eerste stap is het inschakelen van de API en het toewijzen van methoden en bewerkingen die op die specifieke API zijn toegestaan. Dit kan worden gedaan met behulp van de REST UI-module of door eenvoudigweg de configuratie te wijzigen.
  • Om de API in te schakelen via de REST UI-module, klik je op de configureerknop van de REST UI-module (zoals hieronder weergegeven).

    Rest UI

  • In ons voorbeeld willen we de /node/{node} API inschakelen die aanwezig is onder de Content-sectie. Schakel deze API in via de Inschakelen-optie ervoor.

    Rest GET

  • Aangezien ons doel is om de node-informatie op te halen, selecteer je de volgende configuraties:
    • Methode: GET
    • Formaat: json
    • Authenticatieprovider: rest_api_authentication
  • Hiermee kan de miniOrange REST API Authentication-module je API verifiëren. Klik op de Configuratie opslaan-knop om verder te gaan.

    Rest api basic auth

Stappen om Basic Authentication in te schakelen:

  • In deze stap stellen we Basic Authentication in als een API Authentication-methode. Om dit te doen, ga naar het API Authentication-tabblad van de REST API Authentication Module (/admin/config/people/rest_api_authentication/auth_settings)
    • Selecteer het Authenticatie inschakelen-selectievakje en klik op Opslaan boven Instellingen.
    • Kies onder de Instellingen opslaan-knop Basic Authentication en klik op de selecteer methode-knop.

Dat is alles!!!
Laten we nu proberen node-informatie op te halen via een API-call met Basic Authentication.

Voorbeeld:

  • Om node-informatie in Drupal op te halen, moet je een GET-verzoek doen samen met de Drupal-gebruikersnaam en het wachtwoord van de gebruiker. De waarde van de gebruikersnaam en het wachtwoord moet in base64-gecodeerd formaat zijn.  Je kunt hieronder het formaat bekijken om een call te maken.

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

    CURL Request Formaat-
    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'>

  • Je kunt ook verwijzen naar de afbeelding van het Postman-verzoek hieronder:

    REST API auth

  • Een succesvol antwoord geeft de node-informatie terug die je hebt aangemaakt. (zie onderstaande afbeelding)

Basic Auth

  • Als je een foutmelding ontvangt in het antwoord, kun je onderstaande tabel raadplegen voor de foutomschrijving en mogelijke oplossingen.

Fout

Omschrijving

MISSING_AUTHORIZATION_HEADER

Je krijgt deze fout wanneer je geen Authorization-header meestuurt in het API-verzoek of wanneer deze om bepaalde redenen door je server is verwijderd.

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

INVALID_AUTHORIZATION_HEADER_TOKEN_TYPE

Je krijgt deze fout wanneer je de Authorization-header meestuurt, maar niet in een geldig formaat.
Voorbeeld:
{
  "status": "error",
  "error": "INVALID_AUTHORIZATION_HEADER_TOKEN_TYPE",
  "error_description": "Authorization header must be the type of Basic Authentication."
}

USER_NAME_MISSING

Je krijgt deze fout wanneer de module de gebruikersnaam niet kan vinden in de API-call.

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

INVALID_CREDENTIALS

Je krijgt deze fout wanneer de gebruikersnaam of het wachtwoord onjuist is.

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