Sökresultat :

×

SAML Single Sign-On (SSO) för Laravel som använder Azure B2C som IDP


Laravel SAML Single Sign-On (SSO) plugin ger möjlighet att aktivera SAML Single Sign-On för dina laravel-applikationer. Genom att använda Single Sign-On kan du bara använda ett lösenord för att komma åt din laravel-applikation och dina tjänster. Vårt plugin är kompatibelt med alla SAML-kompatibla identitetsleverantörer. Här kommer vi att gå igenom en steg-för-steg-guide för att konfigurera Single Sign-On (SSO) mellan Laravel och Azure B2C med tanke på Azure B2C som IdP.

   

Förutsättningar: Ladda ner och installation

  • Öppna ett kommandotolksfönster och ändra arbetskatalogen till din Laravel-appens huvudkatalog.
  • Ange kommandot nedan.
    composer require miniorange/saml-laravel-free
  • Laravel Single Sign On SSO enter commond
  • Obs: Om du använder Laravel 5.4 eller lägre, måste du lägga till följande värde till 'leverantörer' array i din app.php fil som finns i projekt\config mapp :provider\ssoServiceProvider::class (Du kan kontrollera din nuvarande Laravel-version genom att använda kommandot php artisan --version.)

  • Laravel Single Sign On SSO lägger till följande värde
  • Efter en lyckad installation av paketet, gå till din Laravel-app i webbläsaren och skriv in https://<your-host>/mo_admin i adressfältet.
  • Paketet börjar ställa in din databas åt dig och omdirigerar dig sedan till administratörsregistreringssidan.
  • Registrera dig eller logga in med ditt konto genom att klicka på Registrera knappen för att konfigurera plugin-programmet.
  • Laravel Single Sign On SSO-plugininställningar
  • Efter inloggning kommer du att se Inställningar för tjänsteleverantör alternativet, där du får tjänstleverantörens metadata. Håll metadata till hands eftersom det kommer att krävas senare för att konfigurera steg 1.
  • Laravel Single Sign On SSO Service Provider Inställningar

Steg för att konfigurera Azure B2C Single Sign-On (SSO) Inloggning till Laravel

1. Konfigurera Azure B2C som identitetsleverantör

    1.1 Registrera Azure B2C-applikationer

    miniorange img Registrera applikationen Identity Experience Framework
    • Logga in på Azure B2C Portal
    • Från Azure AD B2C-klienten väljer du Appregistreringaroch välj sedan Ny registrering.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login i Laravel-portal
    • För Namn , ange IdentityExperienceFramework.
    • Enligt Kontotyper som stöds, Välj Endast konton i den här organisationskatalogen.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel - Registrera en applikation
    • Enligt Omdirigera URI, välj Webb och ange sedan https://ditt-hyresgästnamn.b2clogin.com/ditt-hyresgästnamn.onmicrosoft.com, där ditt hyresgästnamn är ditt Azure AD B2C-hyresgästdomännamn.
    • OBS:

      I följande steg om "Behörigheter" avsnittet inte är synligt så kan det vara anledningen till att du inte har en aktiv AzureAD B2C-prenumeration för den hyresgästen. Du kan hitta information om AzureAD B2C-prenumerationen här. och du kan skapa en ny hyresgäst genom att följa stegen här..


    • Enligt behörigheter, markera kryssrutan Ge administratörssamtycke till behörigheter för openid och offline_access.
    • Välja Registrera.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel - Redirect URL
    • Spela in Program (klient) ID för användning i ett senare steg.
    • Azure B2C Laravel SSO - Azure Single Sign-On (SSO) Login in Laravel - Application Client ID
    miniorange img Registrera applikationen Identity Experience Framework
    • Enligt hantera, Välj Exponera ett API.
    • Välja Lägg till ett omfång, välj sedan Spara och fortsätt att acceptera standardprogram-ID-URI.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Inloggning i Laravel - Exponera ett api
    • Ange följande värden för att skapa ett omfång som tillåter anpassad policykörning i din Azure AD B2C-klient:
      1. Omfattningsnamn: user_impersonation
      2. Visningsnamn för administratörssamtycke: Få tillgång till IdentityExperienceFramework
      3. Beskrivning av administratörens samtycke: Tillåt appen att få åtkomst till IdentityExperienceFramework på uppdrag av den inloggade användaren.
    • Välja Lägg till omfattning
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel - anpassade omfattningar
    miniorange img Registrera applikationen ProxyIdentityExperienceFramework
    • Välja AppregistreringarOch väljer sedan Ny registrering.
    • För Namn , ange ProxyIdentityExperienceFramework.
    • Enligt Kontotyper som stöds, Välj Endast konton i den här organisationskatalogen.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel - Original Directory
    • Enligt Omdirigera URI, använd rullgardinsmenyn för att välja Offentlig klient/native (mobil & desktop).
    • För Omdirigera URI, ange myapp://auth.
    • Enligt behörigheter, markera kryssrutan Ge administratörssamtycke till behörigheter för openid och offline_access.
    • Välja Registrera.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel - Registrera
    • Spela in Program (klient) ID för användning i ett senare steg.
    • Azure B2C WordPress SSO - Azure Single Sign-On (SSO) Login i WordPress - applikationsproxy
    miniorange img Ange därefter att ansökan ska behandlas som en offentlig klient
    • Enligt hantera, Välj Autentisering.
    • Enligt Avancerade inställningar, Gör det möjligt Tillåt offentliga kundflöden (välj Ja).
    • Välja Spara.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel - proxyautentisering
    miniorange img Ge nu behörigheter till API-omfattningen som du visade tidigare i IdentityExperienceFramework-registreringen
    • Enligt hantera, Välj API-behörigheter.
    • Enligt Konfigurerade behörigheter, Välj Lägg till en behörighet.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel - autentisering
    • Välj Mina API:er och välj sedan IdentityExperienceFramework ansökan.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel - API-behörigheter
    • Enligt tillstånd, Välj user_impersonation omfattning som du definierade tidigare.
    • Välja Lägg till behörigheter. Vänta några minuter enligt anvisningarna innan du fortsätter till nästa steg.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel- Mina API:er
    • Välja Ge administratörsmedgivande för (ditt hyresgästnamn).
    • Azure B2C LaravelSSO - Azure Single Sign-On(SSO) Login in Laravel - Bevilja admin
    • Välj ditt för närvarande inloggade administratörskonto eller logga in med ett konto i din Azure AD B2C-klient som har tilldelats åtminstone rollen som molnapplikationsadministratör.
    • Välja Ja.
    • Välja refresh, och kontrollera sedan att "Beviljas för ..." visas under Status för scopes - offline_access, openid och user_impersonation. Det kan ta några minuter innan behörigheterna sprids.
    • Azure B2C LaravelSSO - Azure Single Sign-On(SSO) Login in Laravel - B2C,status och administratörsåtkomst
    miniorange img Registrera WordPress-applikationen
    • Välja AppregistreringarOch väljer sedan Ny registrering.
    • Ange ett namn för applikationen, till exempel: hood.discount.
    • Enligt Kontotyper som stöds, Välj Konton i en organisationskatalog eller vilken identitetsleverantör som helst. För autentisering av användare med Azure AD B2C.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel - Kontotyper som stöds
    • Enligt Omdirigera URI, välj Webb och ange sedan ACS URL från Tjänsteleverantörens metadata fliken i miniOrange SAML-plugin.
    • Välja Registrera.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel - app Registrera
    • Enligt hantera, Klicka på Exponera ett API.
    • Klicka på uppsättning för applikations-ID-URI och klicka sedan på Spara, accepterar standardvärdet.
    • SAML Single Sign-On (SSO) med Azure B2C som identitetsleverantör (IdP), för SAML 2.0 Azure B2C, WP-app Visa en sso-inloggning
    • När du har sparat, kopiera applikations-ID-URI och klistra in den i SP Entity ID / Emittent fältet under laravel saml plugin.
    • Klicka på Spara.

    1.2 Generera SSO-policyer

    • Från vår Azure B2C-portal, navigera till avsnittet Översikt för din B2C-klient och registrera ditt klientnamn.
      OBS: Om din B2C-domän är b2ctest.onmicrosoft.com, är din hyresgästnamn b2ctest.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel - B2C klient-ID Reco
    • Ange din Azure B2C klientnamn nedan, tillsammans med applikations-ID för IdentityExperienceFramework och
      ProxyIdentityExperienceFramework-appar som registrerats i stegen ovan.

    • Azure B2C-kundens namn:
      IdentityExperienceFramework-app-ID:
      ProxyIdentityExperienceFramework app-ID:


    • Klicka på Generera Azure B2C-policyer knappen för att ladda ner SSO-policyerna.
    • Extrahera den nedladdade zip-filen. Den innehåller policyfilerna och certifikatet (.pfx), som du behöver i följande steg.

    1.3 Installation av certifikat

    OBS:

    I följande steg om 'Identity Experience Framework' inte är klickbar kan det vara anledningen till att du inte har en aktiv Azure AD B2C-prenumeration för den hyresgästen. Du kan hitta information om Azure AD B2C-prenumerationen här. och du kan skapa en ny hyresgäst genom att följa stegen här..

    miniorange img Ladda upp certifikatet
    • Logga in på Azur portalen och bläddra till din Azure AD B2C-klient.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login i Laravel-framework
    • Enligt policies, Välj Identity Experience Framework och då Policynycklar.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel - Policynycklar
    • Välja Lägg tillOch väljer sedan Alternativ > Ladda upp
    • Ange namnet som SamlIdpCert. Prefixet B2C_1A_ läggs automatiskt till i namnet på din nyckel.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel- Skapa en nyckel
    • Använd uppladdningsfilkontrollen och ladda upp ditt certifikat som genererades i stegen ovan tillsammans med SSO-policyerna (tenantname-cert.pfx).
    • Ange certifikatets lösenord som ditt hyresgästnamn och klicka på Skapa. Om din klients namn till exempel är xyzb2c.onmicrosoft.com anger du lösenordet som xyzb2c
    • Du bör kunna se en ny policynyckel med namnet B2C_1A_SamlIdpCert.
    miniorange img Skapa signeringsnyckeln
    • På översiktssidan för din Azure AD B2C-klient, under policies, Välj Identity Experience Framework.
    • Välja Policynycklar och välj sedan Lägg till.
    • För Montering, välj Generera.
    • In Namn , ange TokenSigningKeyContainer.
    • För Nyckeltyp, välj RSA.
    • För Nyckelanvändning, välj Signatur.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel - Skapa signeringsnyckeln
    • Välja Skapa.
    miniorange img Skapa krypteringsnyckeln
    • På översiktssidan för din Azure AD B2C-klient, under policies, Välj Identity Experience Framework.
    • Välja Policynycklar och välj sedan Lägg till.
    • För Montering, välj Generera.
    • In Namn , ange TokenEncryptionKeyContainer.
    • För Nyckeltyp, välj RSA.
    • För Nyckelanvändning, välj Kryptering.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel - Skapa krypteringsnyckeln
    • Välja Skapa.

    1.4 Ladda upp policyerna

    • Välj Identity Experience Framework menyalternativ i din B2C-klient i Azure-portalen.
    • Azure B2C Laravel SSO - Azure Single Sign-On (SSO) Login i WordPress - Ladda upp policyerna
    • Välja Ladda upp anpassad policy.
    • Azure B2C Laravel SSO - Azure Single Sign-On(SSO) Login in Laravel - Identity Experience Framework
    • Ladda upp policyfilerna som laddats ner i stegen ovan enligt följande ordning:
      • TrustFrameworkBase.xml
      • TrustFrameworkExtensions.xml
      • SignUpOrSignin.xml
      • ProfilEdit.xml
      • PasswordReset.xml
      • SignUpOrSigninSAML.xml
    • När du laddar upp filerna lägger Azure till prefixet B2C_1A_ till var och en.

    Du har framgångsrikt konfigurerat Azure B2C som SAML IdP (Identity Provider) för att uppnå WordPress Azure B2C Single Sign-On (SSO) Login, vilket säkerställer säker inloggning på WordPress (WP) Site.

2. Konfigurera Laravel SAML-plugin som tjänsteleverantör

  • Gå till miniOrange Laravel SAML 2.0 SSO plugin och klicka på Välj FIL knappen bredvid Ladda upp Meatadata alternativ.
  • Välj metadatafilen vi laddade ner från din IDP och klicka på Ladda knapp.
  • Laravel Single Sign On SSO Identity Provider Inställningar
  • Klicka på Testkonfiguration för att testa om SAML-konfigurationen du har gjort är korrekt. Vid framgångsrik testkonfiguration kommer du att få de olika användarattributen returnerade av din identitetsleverantör i en testkonfigurationstabell.
  • Laravel Single Sign On SSO-testkonfiguration Laravel Single Sign On SSO-testresultat

3. SSO-alternativ

  • Dina användare kan starta Single Sign On-flödet genom att klicka på Single Sign On knappen genererad på din inloggningssida. Om du inte har den här sidan ännu, kör php artisan make:auth & php artisan migrera för att generera autentiseringsmodulen.

  • Laravel Single Sign On SSO Single Sign On-knapp

I den här guiden har du konfigurerat Azure B2C SAML enkel inloggning (Azure AD SSO-inloggning) välja Azure B2C som IdP och Laravel som SP använder miniOrange plugin-SAML Single Sign On – SSO Login. Denna lösning säkerställer att du är redo att rulla ut säker åtkomst till din Laravel-webbplats med hjälp av Azure B2C-inloggning inloggningsuppgifter inom några minuter.

Ytterligare resurser

Hej där!

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

stödja