Magento 2 Keycloak Single Sign-On (SSO) | SSO till Magento med Keycloak-inloggningsuppgifter
Översikt
Nyckelmanteln Magento SSO möjliggör säker och sömlös inloggning till din Magento genom att använda Keycloak som din OAuth- och OpenID Connect-leverantör. Med Keycloak Magento SSO-inloggning kan användare komma åt butiken med Keycloak-inloggningsuppgifter. Det betyder att med vår tilläggsfunktion kan användare av din Keycloak logga in i din Magento 2-butik med sina Keycloak-inloggningsuppgifter.
Vår Magento 2 Keycloak-inloggning Tillägget ger säker integration med enkel inloggning (SSO) med avancerade funktioner som attributmappning, rollmappning och åtkomstkontroll. Det förbättrar webbplatsens säkerhet genom att säkerställa att endast verifierade användare kan logga in eller registrera din Magento-webbplats. Med en enkel installationsprocess för Magento Keycloak SSO effektiviserar tillägget användarautentiseringen och förbättrar den övergripande åtkomsthanteringen. Följ guiden nedan för att enkelt installera och konfigurera Keycloak Magento SSO.
Klicka här för att läsa mer om Magento OAuth Single Sign-On (OAuth & OpenID Connect Client)-tilläggens extrafunktioner.
Installationssteg
- Använder Composer
- Manuell installation
Förutsättningar: Ladda ner och installation
- För det första, Ladda ner Keycloak och installera den.
- Starta keycloak-servern baserat på din keycloak-version. (Se tabellen nedan)
| För Keycloak version 16 och nedan |
Gå till rotkatalogen för keycloak bin fristående.sh |
| För Keycloak version 17 och högre |
Gå till rotkatalogen för keycloak bin kc.bat och kör kommandona nedan.
|
Konfigurationssteg
1. Konfigurera miniOrange SSO-tillägg
- I miniOrange Magento SSO-tillägget, navigera till fliken Program och välj OAuth/ÖppenIDoch klicka på nyckelmantel ansökan.
- kopiera Återuppringnings-URL från tillägget. Du behöver detta för nyckelmantel konfiguration.
2. Konfigurera Keycloak som OAuth-leverantör för Magento Keycloak SSO-inloggning
Välj Keycloak-version:
- 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.
- Skapa rike: ange Rikets namn och ha rikets namn till hands eftersom det kommer att krävas senare för att konfigurera Rike under OAuth Client-plugin. Klicka på SKAPA för att lägga till rike.
- Skapa OpenID-klient: Klicka på Klienter Och välj skapa för att skapa en ny klient. Ange klient-id och välj klientprotokoll openeid-anslut och välj Spara.
- Ändra åtkomsttyp: När klienten har skapats ändra dess åtkomsttyp till konfidentiell.
- Ange giltiga omdirigerings-URI:er: Kopiera återuppringnings-URL från Magento Keycloak SSO-tillägget och klicka sedan på
SPARA. Ex -- https://
/oauth/återuppringning - Få klienthemlighet: Nu måste vi få en klienthemlighet. Så välj Klienter och välj referenser och kopiera din hemlighet härifrån.
- Plugin-konfiguration: Enter kopierad Klienthemlighet under Kundhemlighet fältet i OAuth Client-plugin, och ange Kundnamn under fältet Client ID.
- Lägg till användare: Vi måste lägga till användare till riket som kommer att kunna komma åt rikets resurser. Klicka på användare och väljer att Lägg till en ny användare.
- Användarkonfiguration: Efter att användaren har skapats måste följande åtgärd utföras på den.
- Kartanvändare: Vi måste mappa användaren till en roll. Klicka på Rollmappningar och tilldela användaren önskad roll från tillgängliga roller och klicka på lägg till valda.
- Skapa ROLLE: Rollen kommer att användas av dina applikationer för att definiera vilka användare som ska ha behörighet att komma åt applikationen. Klicka på roller och välj Lägg till Roll.
- Skapa grupper: Klicka på Grupper Och välj Nytt för att skapa en ny grupp.
- Tilldela användare till grupp: Välj den användare som du vill lägga till i gruppen. Välj alternativet Grupper från fliken och välj sedan gruppnamnet och klicka på delta.
- Keycloak Group Mapper: Nu för att få gruppinformation måste vi utföra dess klientmappning med gruppmedlemskap, annars hämtas inte gruppdetaljer. Så in Kundsektion, välj din klient och klicka sedan på mappar->skapa.
- Välj nu kartläggartyp as Gruppmedlemskap och ange namn och token-anspråksnamn dvs det attributnamn som motsvarar vilka grupper som kommer att hämtas. Stäng av den fullständiga gruppsökvägen, Lägg till i ID-token och Lägg till för att komma åt alternativen för token och klicka på Spara.
- Keycloak Roll Mapper: Nu för att få rolldetaljer måste vi utföra dess klientmappning med rollmedlemskap annars kommer inte rolldetaljer att hämtas. Så in Kundsektion, välj din klient och klicka sedan på mappar->skapa.
- Välj nu kartläggartyp as användarens roll Medlemskap och gå in i namn. och namn på tokenanspråk dvs det attributnamn som motsvarar vilka grupper som kommer att hämtas. Lägg till i ID-token och Lägg till för att komma åt alternativen för token, och klicka på Spara.
- 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 Skapa rike alternativ.
- Skapa rike: ange Rikets namn och ha rikets namn till hands eftersom det kommer att krävas senare för att konfigurera Rike under OAuth Client-plugin. Klicka på SKAPA för att lägga till rike.
- Skapa OpenID-klient: Klicka på Klienter Och välj Skapa klient för att skapa en ny klient. Ange klient-id och välj klientprotokoll openeid-anslut och klicka Nästa.
- aktivera Klientautentisering och Tillstånd växla.
- Bläddra ner till Åtkomstinställningar och skriv in din Callback/Redirect URL som du får från Magento Keycloak SSO-tillägget som finns under Callback-URL:er textfält.
- Gå till referenser fliken, kopiera Klienthemlighet och ha den nära till hands eftersom vi kommer att behöva den senare när vi konfigurerar Magento Keycloak SSO-tillägget.
- Plugin-konfiguration: Enter kopierad Klienthemlighet under Kundhemlighet fältet i OAuth Client-plugin, och ange kund-ID under kund-ID fält.
- Lägg till användare: Vi måste lägga till användare till riket som kommer att kunna komma åt rikets resurser. Klicka på användare och klicka på Skapa ny användare för att lägga till en ny användare.
- Användarkonfiguration: Efter att användaren har skapats måste följande åtgärd utföras på den.
- Kartanvändare: Vi måste mappa användaren till en roll. Klicka på Rollmappningar och tilldela användaren önskad roll från tillgängliga roller.
- Skapa ROLLE: Rollen kommer att användas av dina applikationer för att definiera vilka användare som ska ha behörighet att komma åt applikationen. Klicka på roller Och välj Skapa roll.
- 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 Skapa rike alternativ.
- Skapa rike: ange Rikets namn och ha rikets namn till hands eftersom det kommer att krävas senare för att konfigurera Rike under OAuth Client-plugin. Klicka på SKAPA för att lägga till rike.
- Skapa OpenID-klient: Klicka på Klienter Och välj Skapa klient för att skapa en ny klient. Ange klient-id och välj klientprotokoll openeid-anslut och klicka Nästa.
- aktivera Klientautentisering och Tillstånd växla.
- Bläddra ner till Åtkomstinställningar och skriv in din Callback/Redirect URL som du får från Magento Keycloak SSO-tillägget Callback-URL:er textfält.
- Gå till referenser fliken, kopiera Klienthemlighet och ha den till hands eftersom vi kommer att behöva den senare när vi konfigurerar Magento Keycloak SSO-tillägget.
- Plugin-konfiguration: Enter kopierad Klienthemlighet under Kundhemlighet fältet i OAuth Client-plugin, och ange kund-ID under kund-ID fält.
- Lägg till användare: Vi måste lägga till användare till riket som kommer att kunna komma åt rikets resurser. Klicka på användare och klicka på Skapa ny användare för att lägga till en ny användare.
- Användarkonfiguration: Efter att användaren har skapats måste följande åtgärd utföras på den.
- Kartanvändare: Vi måste mappa användaren till en roll. Klicka på Rollmappningar och tilldela användaren önskad roll från tillgängliga roller.
- Ange nu OAuth-leverantörens namn, kund-ID, Klienthemlighet, Omfattning och gav slutpunkter.
- Se tabellen nedan för att konfigurera omfattning och slutpunkter för Keycloak version 18 och senare i tillägget.
- Se tabellen nedan för att konfigurera omfattning och slutpunkter för Keycloak version 17 och senare i tillägget .
- Klicka på Spara knappen för att spara inställningarna.
- Klicka på Testkonfiguration knapp.
- Du kommer att se alla värden som returnerats av din OAuth-leverantör till Magento i en tabell. Om du inte ser värden för Förnamn, Efternamn, E-postadress eller Användarnamn, gör de nödvändiga inställningarna i din OAuth-leverantör för att returnera denna information.
- Hitta din Keycloat-applikation och klicka på Redigera i Åtgärdsmeny.
- Klicka på Butikskonfiguration från vänster meny.
- I Butikskonfiguration, välj webbplatsen där du vill aktivera SSO och markera alternativet Aktivera SSO för den här webbplatsen.
- Visa SSO-knapp på inloggningssidan: Visar SSO-knappen på den valda webbplatsens kundinloggningssida.
- Skapa användare automatiskt: Du har möjlighet att automatiskt skapa kundanvändare under SSO-processen om de inte redan finns. Om du markerar motsvarande kryssruta aktiveras den här funktionen.
- Funktion för automatisk omdirigering: Omdirigerar automatiskt användare till OAuth-leverantörens inloggningssida, antingen från Magentos inloggningssida eller från vilken sida som helst på webbplatsen.
- Gå till kundens inloggningssida så ser du SSO-knappen i ditt användargränssnitt. Klicka på knappen och testa SSO:n.
- Du kommer att lyckas logga in på Magento.
- Aktivera SSO för administratörer: Visar SSO-knappen på administratörens inloggningssida.
- Admin SSO-knapptext: Anger etiketten som visas på SSO-knappen på administratörens inloggningssida (t.ex. Logga in via nyckelcloak).
- Skapa administratörsanvändare automatiskt: Skapar automatiskt administratörsanvändare i Magento när de loggar in via SSO för första gången.
- Automatisk omdirigering från administratör: Omdirigerar automatiskt administratörsanvändare till OAuth-leverantörens inloggningssida från administratörens inloggningssida.
- Bakdörrs-URL: En bakdörrs-URL låter dig logga in på din administratörspanel med standardinloggningsuppgifter för administratörer ifall du skulle bli utelåst.
- Gå till din administratörsinloggningssida så ser du knappen SSO på din administratörssida. Klicka på knappen för att initiera SSO som administratör.
- Efter att du har loggat in i Magento som administratör kommer du att omdirigeras till Magentos backend-dashboard.
- Aktivera för kunder: Det här alternativet låter dig aktivera Headless SSO för kunder.
-
Kundens SSO-URL: Denna URL används för att initiera kundens SSO från headless-applikationer. Lägg till denna SSO-URL i din headless-applikation.
- Exempelformat:
https://<your-magento-domain>/mosso/actions/SendSSORequest?relayState={Store_URL}/headless_store_url/{Headless_URL}&app_name=Keycloak AD - {Butiksadress}: Ange din Magento-butiks URL.
- {Huvudlös_URL}: Ange URL:en för din headless-applikation dit kundtoken ska skickas.
- Efter lyckad SSO skickas en kundtoken till den headless URL:en.
Till exempel:{Headless_URL}?customer_token=...
- Exempelformat:
- OAuth-token:Aktivera det här alternativet för att skicka OAuth-leverantörens (Keycloak) JWT-token tillsammans med kundtoken.
- Kundtoken utgångsdatum: Du kan ställa in utgångstiden (i minuter) för kundtoken.
- Vitlista frontend-URL:er: Här kan du lägga till webbadresser som får ta emot kundtoken. Kundtoken skickas endast till den/de webbadresser som är vitlistade här.
- Aktivera för administratörer: I likhet med kunder aktiverar det här alternativet Headless SSO för administratörer.
- Administratörs-SSO-URL: Denna URL initierar administratörs-SSO från headless-applikationer.
- Admin-token utgångsdatum: Ange utgångstiden (i minuter) för administratörstoken.
- Vitlista frontend-URL:er: Administratörstokens skickas endast till vitlistade webbadresser här. Du måste se till att alla webbadresser som tar emot en administratörstoken listas.
- Gå till Attributmappning avsnitt för att konfigurera kundattributmappning.
- Möjliggöra Kundattributmappning och välj kryssrutan alternativet att Uppdatera kundattribut.
- Du kommer att se fält som E-post, Förnamnoch Efternamn under Mappning av kundattribut.
- Mappa dessa fält genom att välja lämpliga alternativ i rullgardinsmenyn.
- Om du behöver lägga till fler attribut klickar du på + Lägg till kundattribut knappen och välj lämpligt attribut från falla ner.
- I Kundattribut avsnittet, aktivera mappning av adressattribut och välj kryssrutan att uppdatera Kundadressattribut.
- Du kommer att se fält som Gatuadress, Postnummer, Ort, Angeoch andra under Kundadressmappning.
- Mappa dessa fält genom att välja lämpliga alternativ i rullgardinsmenyn.
- Om du behöver lägga till ytterligare adressattribut klickar du på + Lägg till adressattribut knappen och välj lämpligt attribut från rullgardinsmenyn.
- I Mappning av administratörsattribut avsnitt, aktivera Mappning av administratörsattribut och välj kryssrutan att uppdatera Admin-attribut.
- Du kommer att se fält som E-post, Användarnamn Förnamnoch Efternamn under Mappning av administratörsattribut.
- Mappa dessa fält genom att välja lämpliga alternativ i rullgardinsmenyn.
- Om du behöver lägga till fler attribut klickar du på + Lägg till administratörsattribut knappen och välj lämpligt attribut från falla ner.
- Magento använder ett koncept med roller, utformat för att ge webbplatsägaren möjligheten att kontrollera vad användare kan och inte kan göra på webbplatsen. Rollmappning hjälper dig att tilldela specifika roller till användare i en viss grupp i din OAuth-leverantör.
- Välj attributet från din identitetsleverantör som innehåller grupp-/rollinformation för både administratörs- och kundanvändare från rullgardinsmenyn.
- I inställningarna för kundgruppsmappning kan butiksadministratören definiera vilken Magento-kundgrupp som ska tilldelas baserat på gruppinformationen som tas emot från identitetsleverantören (IdP) under enkel inloggning (SSO).
- Markera kryssrutan "Uppdatera frontend-grupp vid SSO" om du vill att Magento ska uppdatera kundgruppen varje gång en användare loggar in via SSO.
- Använd rullgardinsmenyn Standardgrupp för att välja de Magento-grupper som ska tilldelas en användare när ingen gruppinformation returneras av identitetsleverantören eller när den mottagna gruppen inte matchar någon konfigurerad mappning.
- Ange värdena för identitetsleverantörsgruppen mot motsvarande Magento-kundgrupper efter behov.
- Användare som tillhör en specifik grupp i identitetsleverantören kommer automatiskt att tilldelas den mappade Magento-gruppen under SSO.
- Exempel: Om gruppvärdet från identitetsleverantören mappas till den allmänna gruppen i Magento, kommer alla användare med den gruppen i IdP:n att tilldelas den allmänna kundgruppen vid SSO.
- Markera kryssrutan "Uppdatera backend-roller med SSO" om du vill att Magento ska uppdatera administratörsroller varje gång en användare loggar in via SSO.
- Använd rullgardinsmenyn Standardgrupp för att välja den Magento-roll som ska tilldelas en användare när ingen gruppinformation returneras av identitetsleverantören eller när den mottagna gruppen inte matchar någon konfigurerad mappning.
- Ange värdena för identitetsleverantörsgruppen mot motsvarande Magento-administratörsroller efter behov.
- Användare som tillhör en specifik grupp i identitetsleverantören kommer automatiskt att tilldelas den mappade Magento-gruppen under SSO.
- Exempel: Om gruppvärdet från identitetsleverantören mappas till gruppen Allmänt i Magento, kommer alla användare med den gruppen i IdP:n att tilldelas rollen som allmän administratör vid SSO.
- Magento säkerhetslösningar
- Vad är enkel inloggning (SSO)?
- Oktas utvecklardokumentation för OAuth 2.0 och OpenID Connect
- Magento OAuth-plugin för enkel inloggning (SSO).
- 1) Ställ in ett lösenord för det så klicka på referenser och ställ in ett nytt lösenord för användaren.
OBS! Om du inaktiverar Temporary blir användarlösenordet permanent.
Steg 1.1: Steg för att hämta Keycloak-grupper [Premie]
Obs: -- Om hela sökvägen är på gruppsökvägen kommer annars gruppnamnet att hämtas.
Steg 1.2: Steg för att hämta Keycloak-roller [Premie]
- 1) Ställ in ett lösenord för det så klicka på referenser och ställ in ett nytt lösenord för användaren.
OBS! Om du inaktiverar Temporary blir användarlösenordet permanent.
- 1) Ställ in ett lösenord för det så klicka på referenser och ställ in ett nytt lösenord för användaren.
OBS! Om du inaktiverar Temporary blir användarlösenordet permanent.
Sammanfattningsvis genom att framgångsrikt konfigurera Keycloak som OAuth-leverantör, du har aktiverat Magento Keycloak SSO-inloggning och auktorisering för dina slutanvändare i Magento.
3. Konfigurera Magento som OAuth-klient
| Omfattning: | e-post profil openid |
| Auktorisera slutpunkt: | /realms/{realm-name}/protocol/openid-connect/auth |
| Åtkomsttokens slutpunkt: | /realms/{realm-name}/protocol/openid-connect/token |
| Få användarinformation slutpunkt: | /realms/{realm-name}/protocol/openid-connect/userinfo |
| Anpassad omdirigeringsadress efter utloggning:[frivillig] | https://{keycloak-domän}/rikes/{realm-name}/protocol/openid-connect/logout?post_logout_redirect_uri={RedirectUri}&id_token_hint=##id_token## |
| Omfattning: | e-post profil openid |
| Auktorisera slutpunkt: | /auth/realms/{realm-name}/protocol/openid-connect/auth |
| Åtkomsttokens slutpunkt: | /auth/realms/{realm-name}/protocol/openid-connect/token |
| Få användarinformation slutpunkt: | /auth/realms/{realm-name}/protocol/openid-connect/userinfo |
| Anpassad omdirigeringsadress efter utloggning:[frivillig] | /auth/realms/{realm-name}/protocol/openid-connect/logout?redirect_uri=OmdirigeraUri |
Obs: I Enterprise-versionen av tillägget kan du konfigurera flera leverantörer. För att konfigurera en annan leverantör klickar du på knappen Lägg till leverantör och konfigurerar önskad leverantör. Du hittar installationsguiderna för alla leverantörer från här..
4. Inställningar för flera webbplatser (*Tillgängligt i Enterprise-versionerna)
Inloggningsinställningar
5. Administratörs-SSO
6. Inställningar för headless SSO (*Tillgängligt i premiumversionerna)
7. Attribut-/anpassad mappning (valfritt). *Detta är en premiumfunktion.
Kundattributmappning

Kundadressmappning
Mappning av administratörsattribut
8. Grupp-/rollmappning (valfritt). *Detta är en premiumfunktion.
Kartläggning av kundgrupper
Mappning av administratörsroller
Ytterligare resurser
Hör av dig
Hör av dig till oss på magentosupport@xecurify.com, och vårt team hjälper dig att konfigurera Magento 2 SSO (OAuth/OIDC) Extension. Vårt team hjälper dig att välja den bästa lösningen/planen utifrån dina behov.
