Självstudie: Konfigurera Ping Identity med Azure Active Directory B2C för säker hybridåtkomst

Viktigt!

Från och med den 1 maj 2025 är Azure AD B2C inte längre tillgängligt att köpa för nya kunder. Läs mer i våra vanliga frågor och svar.

I den här självstudien får du lära dig hur du utökar funktionerna i Azure Active Directory B2C (Azure AD B2C) med PingAccess och PingFederate. PingAccess ger åtkomst till program och API:er samt en principmotor för auktoriserad användaråtkomst. PingFederate är en företagsfederationsserver för användarautentisering och enkel inloggning, en utfärdare som tillåter kunder, anställda och partner att komma åt program från enheter. Använd dem tillsammans för att aktivera säker hybridåtkomst (SHA).

Många e-handelswebbplatser och webbprogram som exponeras för Internet distribueras bakom proxysystem eller ett system med omvänd proxy. Dessa proxysystem förautentiserar, framtvingar principer och dirigerar trafik. Vanliga scenarier är att skydda webbprogram från inkommande webbtrafik och tillhandahålla en enhetlig sessionshantering för distribuerade serverdistributioner.

I allmänhet omfattar konfigurationer ett autentiseringsöversättningslager som externaliserar autentiseringen från webbprogrammet. Omvända proxyservrar ger webbprogrammen den autentiserade användarkontexten, till exempel ett huvudvärde i tydligt eller sammanfattat formulär. Programmen använder inte branschstandardtoken, till exempel SAML (Security Assertion Markup Language), OAuth eller OpenID Connect (OIDC). Proxyn tillhandahåller i stället autentiseringskontext och underhåller sessionen med slutanvändaragenten, till exempel webbläsare eller inbyggt program. Som en tjänst som körs som en man-in-the-middle ger proxyservrar betydande sessionskontroll. Proxytjänsten är effektiv och skalbar, inte en flaskhals för program bakom proxytjänsten. Diagrammet är ett implementerings- och kommunikationsflöde för omvänd proxy.

Diagram över implementeringen av omvänd proxy.

Modernisering

Om du vill modernisera en identitetsplattform i sådana konfigurationer kan det finnas kundproblem:

  • Frikoppla arbetet med att modernisera program från att modernisera en identitetsplattform
  • Miljöer med modern och äldre autentisering som använder sig av den moderniserade identitetstjänstleverantören.
    • Skapa konsekvens för slutanvändarupplevelsen
    • Tillhandahålla en enkel inloggningsupplevelse för alla program

Som svar på dessa bekymmer är tillvägagångssättet i den här självstudien en integrering av Azure AD B2C, PingAccess och PingFederate.

Delad miljö

En tekniskt genomförbar och kostnadseffektiv lösning är att konfigurera det omvända proxysystemet för att använda det moderniserade identitetssystemet och delegera autentisering.
Proxyservrar stöder moderna autentiseringsprotokoll och använder den omdirigeringsbaserade (passiva) autentiseringen som skickar användare till den nya identitetsprovidern (IdP).

Azure AD B2C som identitetsprovider

I Azure AD B2C definierar du principer som driver användarupplevelser och beteenden, även kallade användarresor. Varje sådan princip exponerar en protokollslutpunkt som kan utföra autentiseringen som ett IdP. På programsidan krävs ingen särskild hantering för vissa principer. Ett program gör en standardautentiseringsbegäran till den protokollspecifika autentiseringsslutpunkten som exponeras av en princip.
Du kan konfigurera Azure AD B2C för att dela samma utfärdare mellan principer eller unik utfärdare för varje princip. Varje program kan peka på principer genom att göra en protokollbaserad autentiseringsbegäran, som styr användarbeteenden som inloggning, registrering och profilredigeringar. Diagrammet visar arbetsflöden för OIDC- och SAML-program.

Diagram över arbetsflöden för OIDC- och SAML-program.

Scenariot kan vara svårt för äldre program att omdirigera användaren korrekt. Åtkomstbegäran till programmen kanske inte innehåller användarupplevelsekontexten. I de flesta fall fångar proxylagret, eller en integrerad agent i webbprogrammet, upp åtkomstbegäran.

PingAccess omvänd proxy

Du kan distribuera PingAccess som omvänd proxy. PingAccess fångar upp en direktbegäran genom att vara mannen i mitten eller som en omdirigering från en agent som körs på webbprogramservern.

Konfigurera PingAccess med OIDC, OAuth2 eller SAML för autentisering med en överordnad autentiseringsprovider. Du kan konfigurera en överordnad IdP för detta ändamål på PingAccess-servern. Se följande diagram.

Diagram över en överordnad IDP på en PingAccess-server.

I en typisk Azure AD B2C-distribution med principer som exponerar IdP:er finns det en utmaning. PingAccess har konfigurerats med en överordnad IdP.

PingFederate-federationsproxy

Du kan konfigurera PingFederate som autentiseringsprovider eller proxy för överordnade IP-adresser. Se följande diagram.

Diagram över PingFederate konfigurerad som en autentiseringsleverantör eller proxy för överordnade IDP:er.

Använd den här funktionen för att kontextuellt, dynamiskt eller deklarativt växla en inkommande begäran till en Azure AD B2C-princip. Se följande diagram över protokollsekvensflödet.

Diagram över protokollsekvensflödet för PingAccess, PingFederate, Azure AD B2C och programmet.

Förutsättningar

För att komma igång behöver du:

  • Prenumeration på Azure
    • Om du inte har något får du ett kostnadsfritt Azure-konto
  • En Azure AD B2C-hyresgäst kopplad till din Azure-prenumeration
  • PingAccess och PingFederate distribueras i Docker-containrar eller på virtuella Azure-datorer (VM)

Anslutning och kommunikation

Bekräfta följande anslutning och kommunikation.

  • PingAccess-server – Kommunicerar med PingFederate-servern, klientwebbläsaren, OIDC, OAuth:s välkända URL:er och nycklar som publicerats av Azure AD B2C-tjänsten och PingFederate-servern
  • PingFederate-server – Kommunicerar med PingAccess-servern, klientwebbläsaren, OIDC, OAuth-välkända och nycklar som publicerats av Azure AD B2C-tjänsten
  • Äldre eller huvudbaserat AuthN-program – Kommunicerar till och från PingAccess-servern
  • SAML-förlitande parttillämpning – som har åtkomst till webbläsartrafiken från klienten. Åtkomst till SAML-federationsmetadata som publicerats av Azure AD B2C-tjänsten.
  • Modernt program – når webbläsartrafiken från klienten. Kommer åt den välkända OIDC-, OAuth- och nyckelupptäckandefunktionen som har publicerats av tjänsten Azure AD B2C.
  • REST API – når trafiken från en intern klient eller webbklient. Åtkommer den välkända OIDC-, OAuth- och nyckelupptäckten som publiceras av Azure AD B2C-tjänsten

Konfigurera Azure AD B2C

Du kan använda grundläggande användarflöden eller avancerade IEF-principer (Identity Enterprise Framework). PingAccess genererar metadataslutpunkten, baserat på utfärdarvärdet, med hjälp av WebFinger-protokollet för upptäckningskonvention. Om du vill följa den här konventionen uppdaterar du Azure AD B2C-utfärdaren med hjälp av egenskaper för användarflödesprinciper.

Skärmbild av ämnets underanspråks-URL i dialogrutan Tokenkompatibilitet.

I avancerade policyer innehåller konfigurationen metadataelementet IssuanceClaimPattern som har värdet AuthorityWithTfp i JWT-utfärdarens tekniska profil.

Konfigurera PingAccess och PingFederate

Använd anvisningarna i följande avsnitt för att konfigurera PingAccess och PingFederate. Se följande diagram över det övergripande integrationsanvändarflödet.

Diagram över användarflödet för PingAccess- och PingFederate-integrering

Konfigurera PingFederate som tokenprovider

Om du vill konfigurera PingFederate som tokenprovider för PingAccess kontrollerar du anslutningen från PingFederate till PingAccess. Bekräfta anslutningen från PingAccess till PingFederate.

Konfigurera ett PingAccess-program för huvudbaserad autentisering

Använd följande instruktioner för att skapa ett PingAccess-program för målwebbprogrammet för huvudbaserad autentisering.

Skapa en virtuell värd

Viktigt!

Skapa en virtuell värd för varje program.

Så här skapar du en virtuell värd:

  1. Gå till Inställningar>Åtkomst> tillvirtuella värdar.
  2. Välj Lägg till virtuell värd.
  3. För Värd anger du FQDN-delen av applikations-URL:en.
  4. För Portanger du 443.
  5. Välj Spara.

Skapa en webbsession

Så här skapar du en webbsession:

  1. Gå till Inställningar>Åtkomst till>webbsessioner.
  2. Välj Lägg till webbsession.
  3. Ange ett namn för webbsessionen.
  4. Välj cookietyp: Signerad JWT eller Krypterad JWT.
  5. Ange ett unikt värde för Målgrupp.
  6. För Klient-ID anger du Microsoft Entra-program-ID:t.
  7. För Klienthemlighet anger du den nyckel som du genererade för programmet i Microsoft Entra-ID.
  8. (Valfritt) Skapa och använd anpassade anspråk med Microsoft Graph API: Välj Avancerat. Avmarkera Begärandeprofil och Uppdatera användarattribut. Läs mer om anpassade anspråk: Rubrikbaserad enkel inloggning för lokala appar med Microsoft Entra-programproxy.
  9. Välj Spara

Skapa identitetsmappning

Anmärkning

Du kan använda identitetsmappning med mer än ett program om de förväntar sig samma data i rubriken.

Så här skapar du identitetsmappning:

  1. Gå till Inställningar>Åtkomst>Identitetsmappningar.
  2. Välj Lägg till identitetsmappning.
  3. Ange ett *namn.
  4. Välj identitetsmappning Typ av Sidhuvudidentitetsmappning.
  5. I tabellen Attributmappning anger du de mappningar som krävs. Ett exempel:
Attributnamn Huvudnamn
"upn" x-userprincipalname
e-post x-e-post
"oid" x-oid
"scp" x-omfattning
"amr" X-AMR
  1. Välj Spara

Skapa en webbplats

Anmärkning

I vissa konfigurationer kan en plats innehålla flera program. Du kan använda en webbplats med fler än ett program när det är lämpligt.

Så här skapar du en webbplats:

  1. Gå tillHuvudwebbplatser>.
  2. Välj Lägg till webbplats.
  3. Ange webbplatsnamnet.
  4. Ange webbplatsens mål. Målet är värdnamnet:portparet för servern som är värd för programmet. Ange inte programsökvägen i det här fältet. Ett program på https://mysite:9999/AppName har till exempel ett målvärde på mysite:9999.
  5. Ange om målet förväntar sig säkra anslutningar.
  6. Om målet förväntar sig säkra anslutningar anger du Grupp för betrodda certifikat till Lita på alla.
  7. Välj Spara.

Skapa ett program

Skapa ett program i PingAccess för varje program i Azure som du vill skydda.

  1. Gå till Huvudsida>Applikationer

  2. Välj Lägg till program

  3. Ange ett namn för programmet

  4. Du kan också ange en beskrivning för programmet

  5. Ange kontextroten för programmet. Till exempel har ett program på https://mysite:9999/AppName en kontextrot av /AppName. Kontextroten måste börja med ett snedstreck (/), får inte sluta med ett snedstreck (/) och kan vara mer än ett lager djupt, till exempel /Apps/MyApp.

  6. Välj den virtuella värd som du skapade

    Anmärkning

    Kombinationen av virtuell värd och kontextrot måste vara unik i PingAccess.

  7. Välj den webbsession som du skapade

  8. Välj den webbplats som du skapade som innehåller programmet

  9. Välj den identitetsmappning som du skapade

  10. Välj Aktiverad för att aktivera webbplatsen när du sparar

  11. Välj Spara

Konfigurera autentiseringsprincipen PingFederate

Konfigurera autentiseringsprincipen PingFederate för att federera till de flera IP-adresser som tillhandahålls av Azure AD B2C-klientorganisationer

  1. Skapa ett kontrakt för att överbrygga attributen mellan IP-adresserna och SP. Du bör bara behöva ett kontrakt om inte SP kräver en annan uppsättning attribut från varje IdP. För mer information, se federationsnav och autentiseringspolicyavtal i dokumentationen för Ping Identity.

  2. För varje IdP skapar du en IdP-anslutning mellan IdP och PingFederate, där federationshubben fungerar som tjänsteleverantör.

  3. I fönstret Mappning av målsession lägger du till tillämpliga autentiseringsprincipkontrakt i IdP-anslutningen.

  4. I fönstret Väljare konfigurerar du en autentiseringsväljare. Till exempel, se en instans av Identifier First-adapter för att mappa varje IdP till motsvarande IdP-anslutning i en autentiseringspolicy.

  5. Skapa en SP-anslutning mellan PingFederate, federationshubben som IdP och SP.

  6. Lägg till motsvarande autentiseringsprincipkontrakt i SP-anslutningen i fönstret Mappning av autentiseringskälla .

  7. Arbeta med varje IdP för att ansluta till PingFederate, som fungerar som federationshubben och tjänsteleverantör (SP).

  8. Arbeta med SP för att koppla upp mot PingFederate, federationshubben som agerar IdP.

Nästa steg

Mer information finns i följande artiklar