Sökresultat :

×

SSO Logga in på Drupal med Keycloak som OAuth/OpenID Connect Provider

SSO Logga in på Drupal med Keycloak som OAuth/OpenID Connect Provider


Drupal OAuth/OpenID Connect SSO-integration möjliggör SSO mellan Drupal-webbplatsen och Keycloak. Den här installationsguiden hjälper till att konfigurera Single Sign-On (SSO) mellan Drupal-webbplatsen och Keycloak med hjälp av OAuth/OpenID Connect-modulen. När du införlivar OAuth/OpenID Connect modul med Drupal-webbplatsen kan du logga in på Drupal-webbplatsen sömlöst med Keycloak-uppgifter. Denna modul är kompatibel med Drupal 7, Drupal 8, Drupal 9 och Drupal 10.

Installationssteg:


  • Ladda ner modulen:
    kompositör kräver 'drupal/miniorange_oauth_client'
  • Navigera till Förläng menyn på din Drupal administratörskonsol och sök efter miniOrange OAuth-klientkonfiguration med hjälp av sökrutan.
  • Aktivera modulen genom att markera kryssrutan och klicka på installera knapp.
  • Du kan konfigurera modulen på:
    {BaseURL}/admin/config/people/miniorange_oauth_client/config_clc
  • Installera modulen:
    drush en drupal/miniorange_oauth_client
  • Rensa cacheminnet:
     borsta cr
  • Du kan konfigurera modulen på:
    {BaseURL}/admin/config/people/miniorange_oauth_client/config_clc
  • Navigera till Förläng menyn på din Drupal administratörskonsol och klicka på Installera ny modul.
  • Installera Drupal OAuth & OpenID Connect Login - OAuth2 Client SSO Login modulen antingen genom att ladda ner zip-filen eller från URL:en till paket (tjära/zip).
  • Klicka på Aktivera nyligen tillagda moduler.
  • Aktivera den här modulen genom att markera kryssrutan och klicka på installera knapp.
  • Du kan konfigurera modulen på:
    {BaseURL}/admin/config/people/miniorange_oauth_client/config_clc

Konfigurera Drupal som OAuth-klient:

  • När du har installerat modulen, navigera till konfiguration -> miniOrange OAuth-klientkonfiguration -> Konfigurera OAuth fliken.
  • Drupal OAuth Client - fliken Konfiguration och välj miniorange OAuth-klientmodul
  • Välja nyckelmantel från Välj program falla ner.
  • kopiera Callback/Redirect URL och ha det till hands.
  • Notera: Om din leverantör endast stöder HTTPS Återuppringnings-/omdirigeringsadresser och du har en HTTP-webbplats, se till att aktiveraFramtvinga HTTPS-återuppringnings-URL' kryssrutan längst ned på fliken.

  • Ange Visningsnamn som nyckelmanteln.
  • Drupal OAuth-klient - Konfigurera OAuth-fliken Välj Keycloak och kopiera Callback URL

Skapa OAuth/OpenID Single Sign-On-applikation i Keycloak:

  • Logga in på ditt nyckelmantel administratörskonsolen.
  • Välja Skapa rike från huvudrullgardinsmenyn.
  • Keycloak OAuth/OIDC Single Sign On - Navigera till mastern och klicka på knappen Create Realm
  • Ange programmets namn i Rikets namn textfältet och klicka på Skapa knappen för att fortsätta.
  • Keycloak OAuth/OIDC Single Sign On - ange applikationsnamn i Realm name textfältet
  • Navigera till Klienter -> Kundlista -> Skapa klient.
  • Keycloak OAuth/OIDC Single Sign On - Klicka på knappen Skapa klient
  • I Allmänna inställningar, gå in i kund-ID och klicka på Nästa knapp.
  • Keycloak OAuth/OIDC enkel inloggning - ange klient-ID-namnet i textfältet
  • I Capability Config, aktivera kryssrutan för Klientautentisering och klicka på Nästa knapp.
  • Keycloak OAuth/OIDC Single Sign On - Aktivera kryssrutan för klientautentisering
  • I Inloggningsinställningar, klistra in Callback/Redirect URL i Giltiga omdirigerings-URI:er textfältet och klicka på Save knapp.
  • Keycloak OAuth/OIDC Single Sign On - Kopiera Callback URL som du har kopierat från OAuth Client Module och klistra in den i fältet

Integrering av Drupal med Keycloak:

  • Gå till din Keycloak-applikation. På Inställningar fliken, kopiera kund-ID från Allmänna inställningar sektion. Ha det till hands.
  • Keycloak OAuth/OIDC Single Sign On - Kopiera klient-ID-namnet och ha det till hands
  • I Drupal's Konfigurera OAuth flik klistra in det kopierade kund-ID i kund-ID textfält.
  • Drupal OAuth/OIDC Single Sign On - klistra in det kopierade klient-id:t i textfältet
  • Gå till din Keycloak-applikation, navigera till referenser fliken och kopiera Kundhemlighet genom att klicka på icon för att kopiera den till Urklipp.
  • Keycloak OAuth/OIDC enkel inloggning - Kopiera klienthemligheten
  • I Drupal's Konfigurera OAuth flik, klistra in den kopierade Kundhemlighet i Klienthemlighet textfält.
  • Drupal OAuth/OIDC Single Sign On - Klistra in den kopierade klienthemligheten i fältet

    Ange följande information i motsvarande textfält på fliken Konfigurera OAuth i modulen Drupal OAuth Client.

    Omfattning openid e-postprofil
    Auktorisera slutpunkt (Keycloak bas URL)/realms/{realm-name}/protocol/openid-connect/auth
    Åtkomst Token Endpoint (Keycloak bas URL)/realms/{realm-name}/protocol/openid-connect/token
    Få användarinformation slutpunkt (Keycloak bas URL)/realms/{realm-name}/protocol/openid-connect/userinfo
  • Gå till Keycloak-administratörskonsolen.
  • Navigera till Realm inställningar -> Allmänt och kopiera Realm ID genom att klicka på kopiera icon.
  • Keycloak OAuth/OIDC Single Sign On - kopiera Realm-namnet
  • I Drupal's Konfigurera OAuth fliken, ersätt den tidigare kopierade Realm ID med "rikesnamn" i Auktorisera slutpunkt, Åtkomst Token Endpointoch Få användarinformation slutpunkt textfält.
  • Drupal OAuth/OIDC Single Sign On - Klistra in det kopierade Realm-namnet i det respekterade fältet
  • Navigera till Keycloak-administratörskonsolen och kopiera Keycloak-domänens URL. Till exempel, om din Keycloak körs på localhost, då skulle domänen vara "https://localhost:8080". (se bilden nedan)
  • Keycloak OAuth/OIDC Single Sign On - Kopiera Keycloak-domännamnet
  • I Drupal's Konfigurera OAuth tab, ersätt "Keycloak_base_URL" med den kopierade Keycloak domän URL i Auktorisera slutpunkt, Åtkomst Token Endpointoch Få användarinformation slutpunkt textfält. Klicka sedan på Spara konfiguration knappen för att fortsätta.
  • Drupal OAuth/OIDC Single Sign On - Kopiera Keycloak-domännamnet

miniorange img Steg för att konfigurera Keycloak som OAuth-leverantör:

  • För det första, Ladda ner Keycloak och installera den.
  • Starta server: Starta keycloak-servern genom att köra _standalone.sh_-filens rotkatalog för keycloak/bin/standalone.sh
  • Skapa rike: Logga nu in på keycloak-administrationskonsolen och navigera till önskat område. Du kan lägga till en ny sfär genom att välja Skapa rike alternativ.
  • Keycloak - Logga in Lägg till Realm
  • Skapa rike: Ange Realm Name och klicka på SKAPA för att lägga till rike.
  • Keycloak - Logga in skapa Realm
  • Ange kund-ID och klicka på Save knapp.
  • Keycloak - skapa klient-ID
  • aktivera Klientautentisering och klicka på Save knapp.
  • Keycloak - klientautentisering
  • Klistra in den kopierade (i steg 1) återuppringningsadressen i Giltiga omdirigeringsadresser textområdet och klicka på Save knapp.
  • Keycloak - klistra in redirect-url

miniorange img Integrera Drupal med Keycloak

  • kopiera kund-ID från Keycloak-applikationen kommer klient-ID att vara ditt klientnamn.
  • Keycloak SSO-klient-id
  • Navigera till referenser fliken och kopiera klienthemligheten.
  • Keycloak SSO-klienthemlighet
  • I Drupal's Konfigurera OAuth flik klistra in det kopierade kund-ID och Klienthemlighet (kopierat från Keycloak-portalen) i kund-ID och Klienthemlighet textfält.
  • Keycloak - Kunduppgifter
  • kopiera Keycloak-domän och Nyckelmantel rike.
  • Byt ut den kopierade Keycloak Domain & Keycloak-sfären med {din domän} och {realm-name} i Authorize Endpoint, Access Token Endpoint respektive Get User Info Endpoint.
  • Klicka på Spara konfiguration knapp.
  • Keycloak - scope och endpoints
  • Keycloak omfattning och ändpunkter:
  • Omfattning: openid e-postprofil
    Auktorisera slutpunkt: (Keycloak bas URL)/realms/{realm-name}/protocol/openid-connect/auth
    Åtkomsttokens slutpunkt: (Keycloak bas URL)/realms/{realm-name}/protocol/openid-connect/token
    Få användarinformation slutpunkt: (Keycloak bas URL)/realms/{realm-name}/protocol/openid-connect/userinfo

2. Konfigurera SSO Application i Keycloak

  • För det första, Ladda ner Keycloak och installera den.
  • Starta server: Starta keycloak-servern genom att köra _standalone.sh_-filens rotkatalog för keycloak/bin/standalone.sh
  • Lägg till rike: Logga nu in på keycloak-administrationskonsolen och navigera till önskat område. Du kan lägga till ny sfär genom att välja Lägg till rike alternativ.
  • Keycloak - Logga in Lägg till Realm
  • Skapa rike: Ange Realm Name och klicka på SKAPA för att lägga till rike.
  • Keycloak - Logga in skapa Realm
  • Ange nu Visa namn och klicka på knappen Spara.
  • Keycloak - ange visningsnamn
  • Navigera till Klienter fliken och klicka på Skapa knapp.
  • Keycloak - Klicka på skapa-knappen
  • Ange kund-ID och klicka på Save knapp.
  • Keycloak - skapa klient-ID
  • Klistra in den tidigare kopierade Callback/Redirect URL i Giltiga omdirigeringsadresser textfält och klicka på Save knapp.
  • Keycloak - klistra in redirect-url

3. Integrera Drupal med Keycloak

  • kopiera kund-ID från Keycloak-applikationen kommer klient-ID att vara ditt klientnamn.
  • Keycloak SSO-klient-id
  • Navigera till referenser fliken och kopiera klienthemligheten.
  • Keycloak SSO-klienthemlighet
  • I Drupal's Konfigurera OAuth flik klistra in det kopierade kund-ID och Klienthemlighet (kopierat från Keycloak-portalen) i kund-ID och Klienthemlighet textfält.
  • Keycloak - Kunduppgifter
  • kopiera Keycloak-domän och Nyckelmantel rike.
  • Byt ut den kopierade Keycloak Domain & Keycloak-sfären med {din domän} och {realm-name} i Authorize Endpoint, Access Token Endpoint respektive Get User Info Endpoint och klicka sedan på Spara konfiguration knapp.
  • Keycloak - scope och endpoints
  • Du har slutfört dina Keycloak App OAuth Server-sidans konfigurationer.
  • Ange följande Keycloak Scope och Endpoints:
  • Klient ID : från steget ovan
    Klienthemlighet: från steget ovan
    Omfattning e-postprofil
    Auktorisera slutpunkt (Keycloak bas URL)/realms/{realm-name}/protocol/openid-connect/auth
    Åtkomst Token Endpoint (Keycloak bas URL)/realms/{realm-name}/protocol/openid-connect/token
    Få användarinformation slutpunkt (Keycloak bas URL)/realms/{realm-name}/protocol/openid-connect/userinfo

Testförbindelse mellan Drupal och Keycloak:

  • När du har sparat konfigurationen klickar du på Utför testkonfiguration knappen för att testa kopplingen mellan Drupal och Keycloak.
  • Drupal OAuth OpenID Single Single On - Klicka på Utför testkonfiguration för att testa anslutningen mellan Drupal och Keyclaok
  • Om du inte har en aktiv session i keycloak i samma webbläsare i ett popup-fönster för testkonfiguration, kommer du att bli ombedd att logga in på din Keycloak-administratörskonsol. Efter att ha lyckats logga in på Keycloak kommer du att få en lista över attribut som tas emot från Keycloak.
  • Välj E-postattribut från rullgardinsmenyn där användarens e-post-ID hämtas och klicka på Färdig knapp.
  • Drupal OAuth OpenID Single Single On - Om testanslutningen lyckas kommer du att få attributlistan från keycloak
  • När du klickar på Färdig knappen kommer du att omdirigeras till Attribut- och rollkartläggning fliken, där du kan välja Användarnamn Attribut från rullgardinsmenyn och klicka på Spara konfiguration knapp.
  • Keycloak sso inloggning med drupal OAuth OpenID Single Single On Keycloak test Konfiguration framgångsrikt

Notera: Kartläggning av e-postattributet är obligatoriskt för inloggning.

Grattis! Du har framgångsrikt konfigurerat Keycloak som OAuth-leverantör och Drupal som OAuth-klient.

Hur utför man SSO?

  • Öppna nu en ny webbläsare/privat fönster och gå till din inloggningssida för din Drupal-webbplats.
  • Klicka på Logga in med Keycloak länk för att initiera SSO från Drupal.
  • Om du vill lägga till SSO-länken till andra sidor också, följ stegen i bilden nedan:
  • Drupal OAuth OpenID Single Single-On - Lägg till inloggningslänk till en annan sida på Drupal-webbplatsen

Behöva hjälp?

Om du stöter på några problem under konfigurationen eller om du vill ha några ytterligare funktioner, vänligen kontakta oss på drupalsupport@xecurify.com.

Ytterligare egenskaper:

Felsökning:

Får fel: 'Användarnamn har inte tagits emot. Kontrollera din Attribut Mapping-konfiguration.' ELLER Får fel: 'E-post inte mottaget. Kontrollera din Attribut Mapping-konfiguration.'
 

Följ de nämnda stegen HÄR

Jag får "Klientuppgifter hittades inte i rubrikerna eller brödtexten" när jag försöker utföra testkonfigurationen
 

Följ de nämnda stegen HÄR

Efter att jag klickat på utloggningen i Drupal skickas jag tillbaka till Drupals hemsida. Men när jag försöker logga in med en annan användare, ber den mig inte att logga in utan loggar mig automatiskt in med samma användare
 

Utloggningsfunktionen du har nämnt här är standardbeteendet för en modul. Det loggar ut dig från Drupal men inte från din applikation/leverantör. För att tillåta modulen att logga ut från din leverantör/applikationskonto (det du letar efter), måste du göra följande konfigurationer: [veta mer]

Jag köpte den betalda Drupal-modulen och ersatte den med den kostnadsfria modulen, men jag kan fortfarande inte använda betalda funktioner.
 

Eftersom du har uppgraderat till en av våra betalversioner av Drupal-modulen och ersatt gratismodulen med den betalda, måste du först aktivera betalmodulen. Se stegen nedan. [Veta mer]

Vanliga frågor (FAQ)
 

[Veta mer]

 Fallstudier
miniOrange har framgångsrikt sörjt för användningsfallen för 400+ betrodda kunder med sina mycket flexibla/anpassningsbara Drupal-lösningar. Kolla gärna in några av våra unika fallstudier med detta länk.
 Andra lösningar
Känn dig fri att utforska andra Drupal-lösningar som vi erbjuder här.. De populära lösningarna som används av våra pålitliga kunder inkluderar tvåfaktorsautentisering - 2FA, webbplatssäkerhet, REST & JSON API-autentisering, användarprovisionering och synkronisering. 
  24*7 Aktiv support
Drupal-utvecklarna på miniOrange erbjuder snabbt och aktivt stöd för dina frågor. Vi kan hjälpa dig från att välja den bästa lösningen för ditt användningsfall till att implementera och underhålla lösningen.
Hej där!

Behövs hjälp? Vi är här!

stödja
Kontakta miniOrange Support
framgång

Tack för din förfrågan.

Om du inte hör från oss inom 24 timmar, skicka gärna ett uppföljningsmail till info@xecurify.com