Delen via


Zelfstudie: Ping Identity configureren met Azure Active Directory B2C voor beveiligde hybride toegang

In deze zelfstudie leert u hoe u de mogelijkheden van Azure Active Directory B2C (Azure AD B2C) kunt uitbreiden met PingAccess en PingFederate. PingAccess biedt toegang tot toepassingen en API's, en een beleidsengine voor geautoriseerde gebruikerstoegang. PingFederate is een federatieve ondernemingsserver voor gebruikersverificatie en eenmalige aanmelding, een instantie die klanten, werknemers en partners toegang geeft tot toepassingen vanaf apparaten. Gebruik ze samen om beveiligde hybride toegang (SHA) in te schakelen.

Veel e-commercesites en webtoepassingen die worden blootgesteld aan internet, worden geïmplementeerd achter proxysystemen of een omgekeerd proxysysteem. Deze proxysystemen verifiëren vooraf, dwingen beleid af en routeren verkeer. Typische scenario's omvatten het beveiligen van webtoepassingen tegen binnenkomend webverkeer en het bieden van een uniform sessiebeheer voor gedistribueerde serverimplementaties.

Over het algemeen bevatten configuraties een verificatieomzettingslaag die de verificatie van de webtoepassing externaliseert. Omgekeerde proxy's bieden de geverifieerde gebruikerscontext aan de webtoepassingen, zoals een headerwaarde in duidelijke of samenvattingsvorm. De toepassingen maken geen gebruik van industriestandaard tokens zoals SAML (Security Assertion Markup Language), OAuth of OpenID Connect (OIDC). In plaats daarvan biedt de proxy verificatiecontext en onderhoudt de sessie met de eindgebruikeragent, zoals een browser of systeemeigen toepassing. Als een service die wordt uitgevoerd als een man-in-the-middle, bieden proxy's aanzienlijk sessiebeheer. De proxyservice is efficiënt en schaalbaar, geen knelpunt voor toepassingen achter de proxyservice. Het diagram is een omgekeerde proxy-implementatie en communicatiestroom.

Diagram van de implementatie van de omgekeerde proxy.

Modernisering

Als u een identiteitsplatform in dergelijke configuraties wilt moderniseren, zijn er mogelijk klantproblemen:

  • De inspanningen om toepassingen te moderniseren loskoppelen van het moderniseren van een identiteitsplatform
  • Omgevingen met moderne en verouderde verificatie, die gebruikmaken van de gemoderniseerde id-serviceprovider
    • De consistentie van de eindgebruikerservaring verbeteren
    • Een ervaring voor eenmalige aanmelding bieden voor alle toepassingen

Als antwoord op deze problemen is de benadering in deze zelfstudie een Azure AD integratie van B2C, PingAccess en PingFederate.

Gedeelde omgeving

Een technisch haalbare en rendabele oplossing is om het omgekeerde proxysysteem te configureren voor het gebruik van het gemoderniseerde identiteitssysteem, waarbij verificatie wordt delegeren.
Proxy's ondersteunen de moderne verificatieprotocollen en maken gebruik van de op omleiding gebaseerde (passieve) verificatie waarmee gebruikers naar de nieuwe id-provider (IdP) worden verzonden.

Azure AD B2C als id-provider

In Azure AD B2C definieert u beleidsregels die gebruikerservaringen en -gedrag stimuleren, ook wel gebruikerstrajecten genoemd. Elk dergelijk beleid maakt een protocoleindpunt beschikbaar dat de verificatie als een IdP kan uitvoeren. Aan de toepassingszijde is er geen speciale verwerking vereist voor bepaalde beleidsregels. Een toepassing doet een standaardverificatieaanvraag voor het protocolspecifieke verificatie-eindpunt dat door een beleid wordt weergegeven.
U kunt Azure AD B2C configureren om dezelfde verlener te delen tussen beleidsregels of unieke verleners voor elk beleid. Elke toepassing kan naar beleid verwijzen door een protocoleigen verificatieaanvraag te maken, waardoor gebruikersgedrag wordt aangestuurd, zoals aanmelden, registreren en profielbewerkingen. Het diagram toont werkstromen voor OIDC- en SAML-toepassingen.

Diagram van de OIDC- en SAML-toepassingswerkstromen.

Het scenario kan lastig zijn voor de verouderde toepassingen om de gebruiker nauwkeurig om te leiden. De toegangsaanvraag voor de toepassingen bevat mogelijk niet de context van de gebruikerservaring. In de meeste gevallen onderschept de proxylaag, of een geïntegreerde agent in de webtoepassing, de toegangsaanvraag.

PingAccess omgekeerde proxy

U kunt PingAccess implementeren als de omgekeerde proxy. PingAccess onderschept een directe aanvraag door de man-in-the-middle te zijn, of als een omleiding van een agent die wordt uitgevoerd op de webtoepassingsserver.

Configureer PingAccess met OIDC, OAuth2 of SAML voor verificatie met een upstream-verificatieprovider. U kunt voor dit doel een upstream-IdP configureren op de PingAccess-server. Zie het volgende diagram.

Diagram van een upstream-IDP op een PingAccess-server.

In een typische Azure AD B2C-implementatie met beleidsregels die IDP's beschikbaar maken, is er een uitdaging. PingAccess is geconfigureerd met één, upstream IdP.

PingFederate-federatieproxy

U kunt PingFederate configureren als een verificatieprovider of een proxy voor upstream-id's. Zie het volgende diagram.

Diagram van PingFederate heeft een verificatieprovider of een proxy geconfigureerd voor upstream-IDP's.

Gebruik deze functie om contextueel, dynamisch of declaratief een binnenkomende aanvraag over te schakelen naar een Azure AD B2C-beleid. Zie het volgende diagram van de protocolvolgordestroom.

Diagram van de protocolvolgordestroom voor PingAccess, PingFederate Azure AD B2C en de toepassing.

Vereisten

U hebt u het volgende nodig om aan de slag te gaan:

  • Een Azure-abonnement
  • Een Azure AD B2C-tenant die is gekoppeld aan uw Azure-abonnement
  • PingAccess en PingFederate geïmplementeerd in Docker-containers of op virtuele Azure-machines (VM's)

Connectiviteit en communicatie

Bevestig de volgende connectiviteit en communicatie.

  • PingAccess-server: communiceert met de PingFederate-server, clientbrowser, OIDC, OAuth bekende detectie en sleutels die zijn gepubliceerd door de Azure AD B2C-service en PingFederate-server
  • PingFederate-server: communiceert met de PingAccess-server, clientbrowser, OIDC, bekende OAuth- en sleutelsdetectie die zijn gepubliceerd door de Azure AD B2C-service
  • Verouderde of op headers gebaseerde verificatietoepassing : communiceert naar en van pingaccess-server
  • SAML Relying Party-toepassing : bereikt het browserverkeer van de client. Toegang tot de SAML-federatiemetagegevens die zijn gepubliceerd door de Azure AD B2C-service.
  • Moderne toepassing : bereikt het browserverkeer van de client. Toegang tot de OIDC-, OAuth-bekende en sleuteldetectie die is gepubliceerd door de Azure AD B2C-service.
  • REST API : bereikt het verkeer van een systeemeigen of webclient. Toegang tot de detectie van OIDC- en OAuth-sleutels die zijn gepubliceerd door de Azure AD B2C-service

Azure AD B2C configureren

U kunt basisgebruikersstromen of geavanceerd IEF-beleid (Identity Enterprise Framework) gebruiken. PingAccess genereert het eindpunt voor metagegevens, op basis van de waarde van de verlener, met behulp van het WebFinger-protocol voor detectieconventie. Als u deze conventie wilt volgen, werkt u de Azure AD B2C-verlener bij met behulp van beleidseigenschappen voor gebruikersstromen.

Schermopname van de subclaim-URL van het onderwerp in het dialoogvenster Tokencompatibiliteit.

In het geavanceerde beleid bevat de configuratie het metagegevenselement IssuanceClaimPattern naar de waarde AuthorityWithTfp in het technische profiel van de uitgever van het JWT-token.

PingAccess en PingFederate configureren

Gebruik de instructies in de volgende secties om PingAccess en PingFederate te configureren. Zie het volgende diagram van de algemene integratiegebruikersstroom.

Diagram van de gebruikersstroom voor PingAccess- en PingFederate-integratie

PingFederate configureren als de tokenprovider

Als u PingFederate wilt configureren als de tokenprovider voor PingAccess, zorgt u voor connectiviteit van PingFederate naar PingAccess. Controleer de verbinding van PingAccess naar PingFederate.

Zie Configure PingFederate as the token provider for PingAccess (PingFederate configureren als de tokenprovider voor PingAccess) in de documentatie over Ping Identity voor meer informatie.

Een PingAccess-toepassing configureren voor verificatie op basis van headers

Gebruik de volgende instructies om een PingAccess-toepassing te maken voor de doelwebtoepassing, voor verificatie op basis van headers.

Een virtuele host maken

Belangrijk

Maak een virtuele host voor elke toepassing. Zie Wat kan ik configureren met PingAccess? in de documentatie over Ping Identity voor meer informatie.

Een virtuele host maken:

  1. Ga naar Instellingen>Toegang tot>virtuele hosts.
  2. Selecteer Virtuele host toevoegen.
  3. Voer bij Host het FQDN-gedeelte van de toepassings-URL in.
  4. Voer bij Poort443 in.
  5. Selecteer Opslaan.

Een websessie maken

Een websessie maken:

  1. Navigeer naar Instellingen>Toegang tot>websessies.
  2. Selecteer Websessie toevoegen.
  3. Voer een naam in voor de websessie.
  4. Selecteer het cookietype: Ondertekende JWT of Versleutelde JWT.
  5. Voer een unieke waarde in voor Doelgroep.
  6. Voer bij Client-id de Microsoft Entra toepassings-id in.
  7. Voer bij Clientgeheim de sleutel in die u hebt gegenereerd voor de toepassing in Microsoft Entra-id.
  8. (Optioneel) Aangepaste claims maken en gebruiken met de Microsoft Graph API: selecteer Geavanceerd. Deselecteer Profiel aanvragen en Gebruikerskenmerken vernieuwen. Meer informatie over aangepaste claims: Eenmalige aanmelding op basis van headers voor on-premises apps met Microsoft Entra toepassingsproxy.
  9. Selecteer Opslaan

Identiteitstoewijzing maken

Notitie

U kunt identiteitstoewijzing gebruiken voor meer dan één toepassing, als ze dezelfde gegevens in de header verwachten.

Identiteitstoewijzing maken:

  1. Ga naar Instellingen>Toegang tot>identiteitstoewijzingen.
  2. Selecteer Identiteitstoewijzing toevoegen.
  3. Geef een *Naam op.
  4. Selecteer het type identiteitstoewijzing voor koptekstidentiteitstoewijzing.
  5. Geef in de tabel voor kenmerktoewijzingen de vereiste toewijzingen op. Bijvoorbeeld:
Kenmerknaam Headernaam
'upn' x-userprincipalname
'email' x-email
'oid' x-oid
'scp' x-scope
'amr' x-amr
  1. Selecteer Opslaan

Een site maken

Notitie

In sommige configuraties kan een site meerdere toepassingen bevatten. U kunt een site gebruiken met meer dan één toepassing, indien van toepassing.

Een site maken:

  1. Ga naar Hoofdsites>.
  2. Selecteer Site toevoegen.
  3. Voer de naam van de site in.
  4. Voer het doel van de site in. Het doel is de hostnaam:poort voor de server die de toepassing host. Voer het toepassingspad niet in dit veld in. Een toepassing op https://mysite:9999/AppName heeft bijvoorbeeld de doelwaarde mijnsite:9999.
  5. Geef aan of het doel beveiligde verbindingen verwacht.
  6. Als het doel beveiligde verbindingen verwacht, stelt u de vertrouwde certificaatgroep in op Alle vertrouwen.
  7. Selecteer Opslaan.

Een app maken

Een toepassing maken in PingAccess voor elke toepassing in Azure die u wilt beveiligen.

  1. Ga naar Hoofd>Toepassingen

  2. Selecteer Toepassing toevoegen.

  3. Geef een Naam op voor de toepassing.

  4. Voer eventueel een Beschrijving in voor de toepassing.

  5. Geef de Contexthoofdmap voor de toepassing op. Een toepassing op https://mysite:9999/AppName heeft bijvoorbeeld de contexthoofdmap /AppName. De contexthoofdmap moet beginnen met een slash (/), mag niet eindigen op een slash (/) en kan meer dan één laag diep zijn, bijvoorbeeld /Apps/MyApp.

  6. Selecteer de virtuele host die u hebt gemaakt.

    Notitie

    De combinatie van virtuele host en contexthoofdmap moet uniek zijn in PingAccess.

  7. Selecteer de websessie die u hebt gemaakt.

  8. Selecteer de Site die u hebt gemaakt en die de toepassing bevat.

  9. Selecteer de identiteitstoewijzing die u hebt gemaakt.

  10. Selecteer Ingeschakeld om de site in te schakelen wanneer u opslaat.

  11. Selecteer Opslaan

Het PingFederate-verificatiebeleid configureren

Het PingFederate-verificatiebeleid configureren om te federeren met de IdP's die worden geleverd door de Azure AD B2C-tenants

  1. Maak een contract om de kenmerken tussen de IdP's en de SP te overbruggen. U hebt slechts één contract nodig, tenzij de SP een andere set kenmerken van elke IdP vereist. Zie Federatiehub- en verificatiebeleidscontracten in de documentatie voor Ping Identity voor meer informatie.

  2. Maak voor elke IdP een IdP-verbinding tussen de IdP en PingFederate en de federatiehub als de SP.

  3. Voeg in het venster Doelsessietoewijzing de toepasselijke verificatiebeleidscontracten toe aan de IdP-verbinding.

  4. Configureer in het venster Selectors een verificatiekiezer. Geef bijvoorbeeld een exemplaar van de Identifier First Adapter weer om elke IdP toe te wijzen aan de bijbehorende IdP-verbinding in een verificatiebeleid.

  5. Maak een SP-verbinding tussen PingFederate, de federatiehub als de IdP en de SP.

  6. Voeg in het venster Verificatiebrontoewijzing het bijbehorende verificatiebeleidscontract toe aan de SP-verinding.

  7. Werk met elke IdP om verbinding te maken met PingFederate, de federatiehub als de SP.

  8. Werk met elke SP om verbinding te maken met PingFederate, de federatiehub als de SP.

Volgende stappen

Raadpleeg de volgende artikelen voor meer informatie: