Zelfstudie: Gebruikersstromen en aangepast beleid maken in Azure Active Directory B2C
Voordat u begint, gebruikt u de selector Een beleidstype kiezen om het type beleid te kiezen dat u instelt. U kunt in Azure Active Directory B2C op twee manieren definiëren hoe gebruikers met uw toepassingen communiceren: via vooraf gedefinieerde gebruikersstromen of via volledig configureerbaar aangepast beleid. De stappen die in dit artikel zijn vereist, verschillen voor elke methode.
In uw toepassingen kunt u gebruikersstromen hebben waarmee gebruikers zich kunnen registreren, aanmelden of hun profiel kunnen beheren. U kunt meerdere gebruikersstromen van verschillende typen in uw Azure Active Directory B2C-tenant (Azure AD B2C) maken en deze naar behoefte gebruiken in uw toepassingen. Gebruikersstromen kunnen opnieuw worden gebruikt in verschillende toepassingen.
Met een gebruikersstroom kunt u bepalen hoe gebruikers met uw toepassing werken wanneer ze dingen doen zoals aanmelden, registreren, een profiel bewerken of een wachtwoord opnieuw instellen. In dit artikel leert u het volgende:
Aangepaste beleidsregels zijn configuratiebestanden waarmee het gedrag van uw Azure Active Directory B2C-tenant (Azure AD B2C) wordt gedefinieerd. In dit artikel leert u het volgende:
- Een gebruikersstroom voor registratie en aanmelding maken
- Selfservice voor wachtwoordherstel inschakelen
- Een gebruikersstroom voor profielbewerking maken
Belangrijk
We hebben de manier veranderd waarop we verwijzen naar gebruikersstroomversies. Eerder boden we V1-versies (klaar voor productie) en V1.1- en V2-versies (preview) aan. Nu hebben we gebruikersstromen samengevoegd in twee versies: Aanbevolen gebruikersstromen met de nieuwste functies en Standard-gebruikersstromen (verouderd). Alle verouderde preview-gebruikersstromen (V1.1 en V2) zijn afgeschaft. Raadpleeg Gebruikersstroomversies in Azure AD B2C voor meer informatie. Deze wijzigingen zijn alleen van toepassing op de openbare Azure-cloud. Andere omgevingen blijven verouderde versiebeheer van gebruikersstromen gebruiken.
Vereisten
- Als u er nog geen hebt, maakt u een Azure AD B2C-tenant die is gekoppeld aan uw Azure-abonnement.
- Registreer een webtoepassing en schakel impliciete toekenning van id-token in.
- Als u er nog geen hebt, maakt u een Azure AD B2C-tenant die is gekoppeld aan uw Azure-abonnement.
- Registreer een webtoepassing en schakel impliciete toekenning van id-token in.
Een gebruikersstroom voor registratie en aanmelding maken
Met de gebruikersstroom voor registratie en aanmelding worden zowel registratie als aanmelding met een enkele configuratie afgehandeld. Gebruikers van uw toepassing worden naar het juiste pad geleid, afhankelijk van de context.
Meld u aan bij de Azure-portal.
Als u toegang hebt tot meerdere tenants, selecteert u het pictogram Instellingen in het bovenste menu om over te schakelen naar uw Azure AD B2C-tenant in het menu Mappen en abonnementen.
Zoek en selecteer Azure AD B2C in de Azure-portal.
Selecteer onder Beleid de optie Gebruikersstromen en selecteer vervolgens Nieuwe gebruikersstroom.
Selecteer op de pagina Een gebruikersstroom maken de gebruikersstroom Registreren en aanmelden.
Onder Selecteer een versie selecteert u Aanbevolen en vervolgens Maken. (Meer informatie over gebruikersstroomversies.)
Voer een Naam in voor de gebruikersstroom. Bijvoorbeeld signupsignin1.
Selecteer voor Id-providers de optie E-mailregistratie.
Voor gebruikerskenmerken en tokenclaims kiest u de claims en kenmerken die u wilt verzamelen en verzenden van de gebruiker tijdens de registratie. Selecteer bijvoorbeeld Meer weergeven en kies vervolgens kenmerken en claims voor Land/regio, Weergavenaam en Postcode. Selecteer OK.
Selecteer Maken om de gebruikersstroom toe te voegen. Een voorvoegsel van B2C_1_ wordt automatisch voorafgegaan door de naam.
De gebruikersstroom testen
Selecteer de gebruikersstroom die u hebt gemaakt om de overzichtspagina te openen.
Selecteer Bovenaan de overzichtspagina van de gebruikersstroom de optie Gebruikersstroom uitvoeren. Er wordt een deelvenster geopend aan de rechterkant van de pagina.
Selecteer voor Toepassing de webtoepassing die u wilt testen, zoals de web-app1 met de naam. De antwoord-URL moet
https://jwt.ms
weergeven.Selecteer Gebruikersstroom uitvoeren en selecteer Nu registreren.
Voer een geldig e-mailadres in, selecteer Verificatiecode verzenden, voer de verificatiecode in die u ontvangt en selecteer Code verifiëren.
Voer een nieuw wachtwoord in en bevestig het wachtwoord.
Selecteer uw land en regio, voer de naam in die u wilt weergeven, voer een postcode in en selecteer Vervolgens Maken. Het token wordt geretourneerd aan
https://jwt.ms
en moet worden weergegeven.U kunt de gebruikersstroom nu opnieuw uitvoeren en u moet zich kunnen aanmelden met het account dat u hebt gemaakt. Het geretourneerde token bevat de claims die u hebt geselecteerd voor land/regio, naam en postcode.
Notitie
De 'Gebruikersstroom uitvoeren'-ervaring is momenteel niet compatibel met de SPA-antwoord-URL met autorisatiecodestroom. Als u de 'Gebruikersstroom uitvoeren'-ervaring wilt gebruiken met deze typen apps, moet u een antwoord-URL van het type 'Web' registreren en de impliciete stroom inschakelen zoals hier beschreven.
Selfservice voor wachtwoordherstel inschakelen
Selfservice voor wachtwoordherstel inschakelen voor de gebruikersstroom voor registratie of aanmelding:
- Selecteer de gebruikersstroom voor registreren of aanmelden die u hebt gemaakt.
- Selecteer Eigenschappen onder Instellingen in het linkermenu.
- Selecteer onder Wachtwoordconfiguratie de optie Self-service voor wachtwoordherstel.
- Selecteer Opslaan.
De gebruikersstroom testen
- Selecteer de gebruikersstroom die u hebt gemaakt om de overzichtspagina te openen en selecteer Gebruikersstroom uitvoeren.
- Selecteer voor Toepassing de webtoepassing die u wilt testen, zoals de web-app1 met de naam. De antwoord-URL moet
https://jwt.ms
weergeven. - Selecteer Gebruikersstroom uitvoeren.
- Selecteer op de registratie- of aanmeldingspagina uw wachtwoord vergeten?.
- Controleer het e-mailadres van het account dat u eerder hebt gemaakt en selecteer Vervolgens Doorgaan.
- U hebt nu de mogelijkheid om het wachtwoord voor de gebruiker te wijzigen. Wijzig het wachtwoord en selecteer Doorgaan. Het token wordt geretourneerd aan
https://jwt.ms
en moet worden weergegeven.
Een gebruikersstroom voor profielbewerking maken
Als u gebruikers in staat wilt stellen hun profiel te bewerken in uw toepassing, gebruikt u een gebruikersstroom voor het bewerken van profielen.
- Selecteer in het menu van het paginaoverzicht van de Azure AD B2C-tenant de optie Gebruikersstromen en selecteer vervolgens Nieuwe gebruikersstroom.
- Selecteer op de pagina Een gebruikersstroom maken de gebruikersstroom Profiel bewerken.
- Onder Selecteer een versie selecteert u Aanbevolen en vervolgens Maken.
- Voer een Naam in voor de gebruikersstroom. Bijvoorbeeld profileediting1.
- Voor id-providers selecteert u onder Lokale accounts de optie E-mailregistratie.
- Kies voor Gebruikerskenmerken de kenmerken waarvan u wilt dat de klant deze in zijn profiel kan bewerken. Selecteer bijvoorbeeld Meer weergeven en kies vervolgens kenmerken en claims voor Weergavenaam en Functie. Selecteer OK.
- Selecteer Maken om de gebruikersstroom toe te voegen. Er wordt automatisch een voorvoegsel van B2C_1_ toegevoegd aan de naam.
De gebruikersstroom testen
- Selecteer de gebruikersstroom die u hebt gemaakt om de overzichtspagina te openen.
- Selecteer Bovenaan de overzichtspagina van de gebruikersstroom de optie Gebruikersstroom uitvoeren. Er wordt een deelvenster geopend aan de rechterkant van de pagina.
- Selecteer voor Toepassing de webtoepassing die u wilt testen, zoals de web-app1 met de naam. De antwoord-URL moet
https://jwt.ms
weergeven. - Selecteer Gebruikersstroom uitvoeren en meld u vervolgens aan met het account dat u eerder hebt gemaakt.
- U hebt nu de mogelijkheid om de weergavenaam en de functie voor de gebruiker te wijzigen. Selecteer Continue. Het token wordt geretourneerd aan
https://jwt.ms
en moet worden weergegeven.
Fooi
In dit artikel wordt uitgelegd hoe u uw tenant handmatig instelt. U kunt het hele proces vanuit dit artikel automatiseren. Het automatiseren implementeert het starterspakket Azure AD B2C SocialAndLocalAccountsWithMFA, waarmee registratie- en aanmeldingstrajecten, wachtwoordherstel en profielbewerking worden geboden. Als u het onderstaande overzicht wilt automatiseren, gaat u naar de IEF-installatie-app en volgt u de instructies.
Ondertekenings- en versleutelingssleutels toevoegen voor Identity Experience Framework-toepassingen
- Meld u aan bij de Azure-portal.
- Als u toegang hebt tot meerdere tenants, selecteert u het pictogram Instellingen in het bovenste menu om over te schakelen naar uw Azure AD B2C-tenant in het menu Mappen en abonnementen.
- Zoek en selecteer Azure AD B2C in de Azure-portal.
- Selecteer op de overzichtspagina onder Beleid de optie Identity Experience Framework.
De ondertekeningssleutel maken
- Selecteer Beleidssleutels en vervolgens Toevoegen.
- Voor Opties kiest u
Generate
. - Voer bij Naam
TokenSigningKeyContainer
in. Het voorvoegselB2C_1A_
wordt mogelijk automatisch toegevoegd. - Selecteer RSA voor sleuteltype.
- Selecteer Handtekening voor sleutelgebruik.
- Selecteer Maken.
De versleutelingssleutel maken
- Selecteer Beleidssleutels en vervolgens Toevoegen.
- Voor Opties kiest u
Generate
. - Voer bij Naam
TokenEncryptionKeyContainer
in. Het voorvoegselB2C_1A
_ kan automatisch worden toegevoegd. - Selecteer RSA voor sleuteltype.
- Voor sleutelgebruik selecteert u Versleuteling.
- Selecteer Maken.
Identity Experience Framework-toepassingen registreren
Voor Azure AD B2C moet u twee toepassingen registreren die worden gebruikt voor het registreren en aanmelden van gebruikers met lokale accounts: IdentityExperienceFramework, een web-API en ProxyIdentityExperienceFramework, een systeemeigen app met gedelegeerde machtigingen voor de IdentityExperienceFramework-app. Uw gebruikers kunnen zich registreren met een e-mailadres of gebruikersnaam en een wachtwoord voor toegang tot uw door de tenant geregistreerde toepassingen, waarmee een 'lokaal account' wordt gemaakt. Lokale accounts bestaan alleen in uw Azure AD B2C-tenant.
U moet deze twee toepassingen slechts één keer registreren in uw Azure AD B2C-tenant.
De IdentityExperienceFramework-toepassing registreren
Als u een toepassing wilt registreren in uw Azure AD B2C-tenant, kunt u de App-registraties-ervaring gebruiken.
- Selecteer App-registraties en selecteer vervolgens Nieuwe registratie.
- Voer bij Naam de tekst
IdentityExperienceFramework
in. - Onder Ondersteunde accounttypen selecteert u Enkel accounts in deze organisatieadreslijst.
- Selecteer onder Omleidings-URI de optie Web en voer
https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com
vervolgens in, waaryour-tenant-name
is uw Azure AD B2C-tenantdomeinnaam. - Selecteer in Machtigingen het selectievakje Beheerdersgoedkeuring verlenen aan machtigingen van OpenID en offline_access.
- Selecteer Registreren.
- Noteer de Toepassings-id (client) voor gebruik in een latere stap.
Maak vervolgens de API beschikbaar door een bereik toe te voegen:
- Selecteer een API beschikbaar maken in het linkermenu onder Beheren.
- Selecteer Een bereik toevoegen en selecteer Opslaan en ga verder met het accepteren van de standaard-URI voor de toepassings-id.
- Voer de volgende waarden in om een bereik te maken waarmee aangepaste beleidsuitvoering in uw Azure AD B2C-tenant mogelijk is:
- Naam van bereik:
user_impersonation
- Weergavenaam van beheerderstoestemming:
Access IdentityExperienceFramework
- Beschrijving van beheerderstoestemming:
Allow the application to access IdentityExperienceFramework on behalf of the signed-in user.
- Naam van bereik:
- Selecteer Bereik toevoegen
De ProxyIdentityExperienceFramework-toepassing registreren
- Selecteer App-registraties en selecteer vervolgens Nieuwe registratie.
- Voer bij Naam de tekst
ProxyIdentityExperienceFramework
in. - Onder Ondersteunde accounttypen selecteert u Enkel accounts in deze organisatieadreslijst.
- Gebruik onder Omleidings-URI de vervolgkeuzelijst om openbare client/systeemeigen (mobiel & bureaublad) te selecteren.
- Voer voor omleidings-URI de tekst in
myapp://auth
. - Selecteer in Machtigingen het selectievakje Beheerdersgoedkeuring verlenen aan machtigingen van OpenID en offline_access.
- Selecteer Registreren.
- Noteer de Toepassings-id (client) voor gebruik in een latere stap.
Geef vervolgens op dat de toepassing moet worden behandeld als een openbare client:
- Selecteer hiervoor Verificatie in het linkermenu onder Beheren.
- Stel onder Geavanceerde instellingen in de sectie Openbare clientstromen toestaan de volgende mobiele en bureaubladstromen in op Ja.
- Selecteer Opslaan.
- Zorg ervoor dat allowPublicClient: true is ingesteld in het toepassingsmanifest:
- Selecteer in het linkermenu onder Beheren het manifest om het toepassingsmanifest te openen.
- Zoek de allowPublicClient-sleutel en zorg ervoor dat de waarde is ingesteld op true.
Verdeel nu machtigingen aan het API-bereik dat u eerder in de IdentityExperienceFramework-registratie hebt weergegeven:
- Selecteer API-machtigingen in het linkermenu onder Beheren.
- Selecteer onder Geconfigureerde machtigingen de optie Een machtiging toevoegen.
- Selecteer het tabblad Mijn API's en selecteer vervolgens de IdentityExperienceFramework-toepassing .
- Selecteer onder Machtiging het user_impersonation bereik dat u eerder hebt gedefinieerd.
- Selecteer Machtigingen toevoegen. Wacht, zoals aangegeven, een paar minuten voordat u verdergaat met de volgende stap.
- Selecteer Beheerderstoestemming verlenen voor <uw tenantnaam)>.
- Selecteer Ja.
- Selecteer Vernieuwen en controleer vervolgens of 'Verleend voor ...' wordt weergegeven onder Status voor het bereik.
Starterspakket voor aangepaste beleidsregels
Aangepaste beleidsregels zijn een set XML-bestanden die u uploadt naar uw Azure AD B2C-tenant om technische profielen en gebruikerstrajecten te definiëren. We bieden starterspakketten met verschillende vooraf gemaakte beleidsregels om u snel op weg te helpen. Elk van deze starterspakketten bevat het kleinste aantal technische profielen en gebruikerstrajecten dat nodig is om de beschreven scenario's te bereiken:
- LocalAccounts: Maakt alleen het gebruik van lokale accounts mogelijk.
- SocialAccounts: Maakt alleen het gebruik van sociale (of federatieve) accounts mogelijk.
- SocialAndLocalAccounts: Maakt het gebruik van zowel lokale als sociale accounts mogelijk.
- SocialAndLocalAccountsWithMFA: Maakt opties voor sociale, lokale en meervoudige verificatie mogelijk.
Elk starterspakket bevat:
- Basisbestand : er zijn weinig wijzigingen vereist voor de basis. Voorbeeld: TrustFrameworkBase.xml
- Lokalisatiebestand : dit bestand is waar lokalisatiewijzigingen worden aangebracht. Voorbeeld: TrustFrameworkLocalization.xml
- Extensiebestand - Dit bestand is waar de meeste configuratiewijzigingen worden aangebracht. Voorbeeld: TrustFrameworkExtensions.xml
- Relying party-bestanden : taakspecifieke bestanden die door uw toepassing worden aangeroepen. Voorbeelden: SignUpOrSignin.xml, ProfileEdit.xml, PasswordReset.xml
In dit artikel bewerkt u de aangepaste XML-beleidsbestanden in het starterspakket SocialAndLocalAccounts . Als u een XML-editor nodig hebt, probeert u Visual Studio Code, een lichtgewicht platformoverschrijdende editor.
Het starterspakket ophalen
Haal de aangepaste beleidsstartpakketten op uit GitHub en werk vervolgens de XML-bestanden in het starterspakket SocialAndLocalAccounts bij met de naam van uw Azure AD B2C-tenant.
Download het ZIP-bestand of kloon de opslagplaats:
git clone https://github.com/Azure-Samples/active-directory-b2c-custom-policy-starterpack
Vervang in alle bestanden in de map SocialAndLocalAccounts de tekenreeks
yourtenant
door de naam van uw Azure AD B2C-tenant.Als de naam van uw B2C-tenant bijvoorbeeld contosotenant is, worden alle exemplaren .
yourtenant.onmicrosoft.com
contosotenant.onmicrosoft.com
Toepassings-id's toevoegen aan het aangepaste beleid
Voeg de toepassings-id's toe aan het bestand TrustFrameworkExtensions.xml.
- Open
SocialAndLocalAccounts/
TrustFrameworkExtensions.xml
het element en zoek het.<TechnicalProfile Id="login-NonInteractive">
- Vervang beide instanties van
IdentityExperienceFrameworkAppId
door de toepassings-id van de IdentityExperienceFramework-toepassing die u eerder hebt gemaakt. - Vervang beide instanties van
ProxyIdentityExperienceFrameworkAppId
door de toepassings-id van de ProxyIdentityExperienceFramework-toepassing die u eerder hebt gemaakt. - Sla het bestand op.
Facebook toevoegen als id-provider
Het starterspakket SocialAndLocalAccounts bevat sociale aanmelding via Facebook. Facebook is niet vereist voor het gebruik van aangepast beleid, maar we gebruiken dit hier om te laten zien hoe u federatieve sociale aanmelding kunt inschakelen in een aangepast beleid. Als u federatieve sociale aanmelding niet hoeft in te schakelen, gebruikt u in plaats daarvan het starterspakket LocalAccounts en slaat u Facebook toevoegen over als een sectie met id-providers .
Facebook-toepassing maken
Gebruik de stappen die worden beschreven in Een Facebook-toepassing maken om facebook-app-id en app-geheim op te halen. Sla de vereisten en de rest van de stappen in het artikel Registratie instellen en aanmelden met een Facebook-account over.
De Facebook-sleutel maken
Voeg het app-geheim van uw Facebook-toepassing toe als beleidssleutel. U kunt het app-geheim gebruiken van de toepassing die u hebt gemaakt als onderdeel van de vereisten van dit artikel.
- Meld u aan bij de Azure-portal.
- Als u toegang hebt tot meerdere tenants, selecteert u het pictogram Instellingen in het bovenste menu om over te schakelen naar uw Azure AD B2C-tenant in het menu Mappen en abonnementen.
- Zoek en selecteer Azure AD B2C in de Azure-portal.
- Selecteer op de overzichtspagina onder Beleid de optie Identity Experience Framework.
- Selecteer Beleidssleutels en vervolgens Toevoegen.
- Voor Opties kiest u
Manual
. - Voer bij Naam de tekst
FacebookSecret
in. Het voorvoegselB2C_1A_
wordt mogelijk automatisch toegevoegd. - Voer in Geheim het app-geheim van uw Facebook-toepassing in vanuit developers.facebook.com. Deze waarde is het geheim, niet de toepassings-id.
- Selecteer Handtekening voor sleutelgebruik.
- Selecteer Maken.
TrustFrameworkExtensions.xml bijwerken in een aangepast starterspakket voor beleid
Vervang de waarde in client_id
het SocialAndLocalAccounts/
TrustFrameworkExtensions.xml
bestand door de Facebook-toepassings-id en sla wijzigingen op.
<TechnicalProfile Id="Facebook-OAUTH">
<Metadata>
<!--Replace the value of client_id in this technical profile with the Facebook app ID"-->
<Item Key="client_id">00000000000000</Item>
Het beleid uploaden
- Selecteer de menuopdracht Identity Experience Framework in uw B2C-tenant in Azure Portal.
- Selecteer Aangepast beleid uploaden.
- In deze volgorde uploadt u de beleidsbestanden:
- TrustFrameworkBase.xml
- TrustFrameworkLocalization.xml
- TrustFrameworkExtensions.xml
- SignUpOrSignin.xml
- ProfileEdit.xml
- PasswordReset.xml
Wanneer u de bestanden uploadt, voegt Azure het voorvoegsel toe aan elk bestand B2C_1A_
.
Fooi
Als uw XML-editor validatie ondersteunt, valideert u de bestanden op basis van het TrustFrameworkPolicy_0.3.0.0.xsd
XML-schema dat zich in de hoofdmap van het starterspakket bevindt. Xml-schemavalidatie identificeert fouten voordat u uploadt.
Het aangepaste beleid testen
- Selecteer onder Aangepast beleid B2C_1A_signup_signin.
- Selecteer voor Toepassing selecteren op de overzichtspagina van het aangepaste beleid de webtoepassing die u wilt testen, zoals de web-app1 met de naam.
- Zorg ervoor dat de antwoord-URL is
https://jwt.ms
. - Selecteer Nu uitvoeren.
- Meld u aan met een e-mailadres.
- Selecteer Nu uitvoeren opnieuw.
- Meld u aan met hetzelfde account om te bevestigen dat u de juiste configuratie hebt.
- Selecteer Nu uitvoeren opnieuw en selecteer Facebook om u aan te melden met Facebook en het aangepaste beleid te testen.
Volgende stappen
In dit artikel hebt u het volgende geleerd:
- Een gebruikersstroom voor registreren en aanmelden maken
- Een gebruikersstroom voor profielbewerking maken
- Een gebruikersstroom voor het opnieuw instellen van het wachtwoord maken
Leer vervolgens hoe u Azure AD B2C gebruikt om gebruikers aan te melden en te registreren in een toepassing. Volg de voorbeeld-apps die hieronder zijn gekoppeld:
- Een voorbeeld-ASP.NET Core-web-app configureren
- Een voorbeeld-ASP.NET Core-web-app configureren die een web-API aanroept
- Verificatie configureren in een Python-voorbeeldwebtoepassing
- Een voorbeeldtoepassing met één pagina configureren (BEVEILIGD-WACHTWOORDVERIFICATIE)
- Een voorbeeld-app van Angular met één pagina configureren
- Een voorbeeld van een mobiele Android-app configureren
- Een voorbeeld van een mobiele iOS-app configureren
- Verificatie configureren in een voorbeeld-WPF-bureaubladtoepassing
- Verificatie inschakelen in uw web-API
- Een SAML-toepassing configureren
U kunt ook meer informatie vinden in de Deep Dive Series van Azure AD B2C Architecture.