Konfigurera autentisering av extern identitetsleverantör i Drupal
Autentiseringsmetoden för externa identitetsleverantörer låter dig säkra och begränsa åtkomst till dina Drupal REST API:er med hjälp av tokens från tredjepartsleverantörer som Google, Azure AD, Keycloak, Okta eller GitLab. Genom att integrera med din identitetsleverantör säkerställer den här metoden att endast autentiserade användare kan komma åt dina Drupal API:er. Åtkomsttokenet som används i den här metoden erhålls strikt från en extern identitetsleverantör (IdP). Drupal API-autentisering Modulen stöder Drupal 8, 9, 10 och 11.
- Använder Composer
- Använder Drush
- Manuell installation
Förutsättningar:
- REST-gränssnittDen här modulen tillhandahåller ett användarvänligt gränssnitt för att konfigurera REST-modulen.
- Aktivera följande webbtjänstmoduler från Förläng avsnittet (/admin/modules) på din Drupal-webbplats:
- JSON:API
- REST-gränssnitt
- RESTful webbtjänster
- serialisering
Aktivera API och tilldela metoder:
- Det första steget är att aktivera API:et och tilldela de metoder och operationer som är tillåtna för det API:et. Detta kan göras med hjälp av REST-gränssnitt modulen, eller genom att direkt ändra Drupal-konfigurationen.
- Klicka på Aktivera API knapp.
- För att aktivera API:et med hjälp av REST UI-modulen, klicka på Inställd knappen (som visas nedan).
- I vårt exempel behöver vi aktivera /enhet/användare API. För att göra detta, klicka på alternativet Aktivera framför det.
- Eftersom vårt mål är att skapa en användare i Drupal, välj följande konfigurationer:
- Metod: POST
- Format: JSON
- Autentiseringsleverantör: rest_api_authentication
- Detta gör att miniOrange API-autentiseringsmodulen kan autentisera API:et. Klicka på Spara konfiguration knappen för att fortsätta.
Konfigurationssteg
1. Konfigurera autentiseringsmetod för extern identitetsleverantör:
- I det här steget kommer vi att ställa in Extern identitetsleverantör som en API-autentisering. För att göra detta, navigera till API-autentisering fliken i modulen (/admin/config/people/rest_api_authentication/auth_settings).
- Enligt Grundläggande konfiguration, aktivera Aktivera autentisering växla.
- Ange applikationsnamn och välj Extern identitetsleverantör från Autentiseringsmetod sektion.
- Bläddra ner till Konfiguration av extern identitetsleverantör avsnitt på samma flik.
- Ange Användarinfo Endpoint för din identitetsleverantör i det angivna fältet, så att modulen kan hämta användarinformation med hjälp av den angivna token.
- I Användarnamn Attribut, ange attributnyckeln eller namnet från din identitetsleverantör som innehåller användarnamnet som skickades av den externa leverantören.
- Klicka på Spara konfiguration knapp.
- Du har konfigurerat metoden Extern identitetsleverantör.
Obs: Använd den applikationsspecifika unika rubriken när du autentiserar API:et.
Ge rollbehörigheter för att skapa användare
- Om det behövs kan du tillåta Drupal-roller som inte är administratörer att skapa användare. För att göra detta, tilldela behörigheten Administrera användare till önskade roller från sidan Behörigheter (/admin/people/permissions) på din Drupal-webbplats.
2. Exempel:
- För en bättre förståelse, låt oss ta ett exempel på hur man lägger till autentisering baserad på extern identitetsleverantör till API:et för att skapa användare i Drupal.
- För att skapa en användare i Drupal, skicka en POST-förfrågan tillsammans med token som mottagits från din identitetsleverantör.
Obs: API:et /entity/user i Drupal används för att skapa en ny användare.
HTML-förfrågningsformat - Begäran: POST /entity/user?_format=json Rubrik: AUT.METOD: application_id Token: Acceptera: application/json Innehållstyp: application/json Brödtext: { "namn": { "värde": " "}, "post": { "värde": " "}, "pass": { "värde": " "}, "status": { "värde": "1" } } CURL-förfrågan Format- curl --location --request POST ' /entity/user?_format=json' \ --header 'AUT.METOD: applikations-id' \ --header 'Token: ' \ --header 'Acceptera: application/json' \ --header 'Innehållstyp: application/json' \ --data-raw ' { "namn": [ { "värde": "Användarnamn" } ], "post": [ { "värde": "e-post" } ], "pass": [ { "värde": "Lösenord" } ], "status": [ { "värde": "1" } ] }
- Ett lyckat svar returnerar informationen om den användare du skapade (se bilden nedan).
Grattis! Du har konfigurerat metoden Extern identitetsleverantör med hjälp av Drupal API-autentiseringsmodulen.
Om konfigurationen inte lyckades, vänligen kontakta oss på drupalsupport@xecurify.comVänligen bifoga en skärmdump av felfönstret så hjälper vi dig att lösa problemet och guidar dig genom installationen.
Tack för ditt svar. Vi återkommer snart.
Något gick fel. Skicka din fråga igen
