Självstudie: Skapa användarflöden och anpassade principer i Azure Active Directory B2C

*Innan du börjar _, använder du väljaren _ Välj en principtyp * för att välja den typ av princip som du ställer in. Azure Active Directory B2C erbjuder två metoder för att definiera hur användare interagerar med dina program: via fördefinierade användarflöden eller genom fullständigt konfigurerbara anpassade principer. De steg som krävs i den här artikeln är olika för varje metod.

I dina program kan du ha användarflöden som gör det möjligt för användare att registrera sig, logga in eller hantera sin profil. Du kan skapa flera användarflöden av olika typer i din Azure Active Directory B2C-klientorganisation (Azure AD B2C) och använda dem i dina program efter behov. Användarflöden kan återanvändas i olika program.

Med ett användarflöde kan du bestämma hur användare interagerar med ditt program när de gör saker som att logga in, registrera sig, redigera en profil eller återställa ett lösenord. I den här artikeln kan du se hur du:

Anpassade principer är konfigurationsfiler som definierar beteendet för din Azure Active Directory B2C-klientorganisation (Azure AD B2C). I den här artikeln kan du se hur du:

  • Skapa ett användarflöde för registrering och inloggning
  • Aktivera lösenordsåterställning via självbetjäning
  • Skapa ett användarflöde för profilredigering

Viktigt

Vi har ändrat hur vi refererar till användarflödesversioner. Tidigare erbjöd vi V1-versioner (produktionsklara), V1.1 och V2 (förhandsversion). Nu har vi konsoliderat användarflöden i två versioner: Rekommenderade användarflöden med de senaste funktionerna och Standard-användarflöden (äldre). Alla äldre användarflöden för förhandsversioner (V1.1 och V2) är inaktuella. Mer information finns i Användarflödesversioner i Azure AD B2C. Dessa ändringar gäller endast för det offentliga Azure-molnet. Andra miljöer fortsätter att använda äldre versionshantering av användarflöden.

Förutsättningar

Skapa ett användarflöde för registrering och inloggning

Användarflödet för registrering och inloggning hanterar både registrering och inloggning med en enda konfiguration. Användare av ditt program leder nedåt på rätt väg beroende på kontexten.

  1. Logga in på Azure-portalen.

  2. Kontrollera att du använder den katalog som innehåller din Azure AD B2C klientorganisation. Välj ikonen Kataloger + prenumerationer i portalens verktygsfält.

  3. portalens inställningar | Sidan Kataloger + prenumerationer, leta upp Azure AD B2C katalog i listan Katalognamn och välj sedan Växla.

  4. I listan Azure Portal du efter och väljer Azure AD B2C.

  5. Under Principer väljer du Användarflöden och sedan Nytt användarflöde.

    Sidan Användarflöden i portalen med knappen Nytt användarflöde markerad

  6. På sidan Skapa ett användarflöde väljer du användarflödet Registrera dig och logga in.

    Välj en användarflödessida med flödet Registrera dig och logga in markerat

  7. Under Välj en version väljer du Rekommenderad och sedan Skapa. (Läs mer om användarflödesversioner.)

    Sidan Skapa användarflöde i Azure Portal med egenskaper markerade

  8. Ange ett Namn för användarflödet. Till exempel signupsignin1.

  9. För Identitetsproviders väljer du E-postsignering.

  10. För Användarattribut och anspråk väljer du de anspråk och attribut som du vill samla in och skicka från användaren under registrering. Välj till exempel Visa fler och välj sedan attribut och anspråk för Land/Region, Visningsnamn och Postnummer. Klicka på OK.

    Sidan för val av attribut och anspråk med tre anspråk valt

  11. Klicka på Skapa för att lägga till användarflödet. Ett prefix B2C_1 läggs automatiskt till i namnet.

Testa användarflödet

  1. Välj det användarflöde som du skapade för att öppna översiktssidan och välj sedan Kör användarflöde.

  2. För Program väljer du webbappen med namnet webapp1 som du registrerade tidigare. Svars-URL:en ska visa https://jwt.ms .

  3. Klicka på Kör användarflöde och välj sedan Registrera dig nu.

    Sidan Kör användarflöde i portalen med knappen Kör användarflöde markerad

  4. Ange en giltig e-postadress, klicka på Skicka verifieringskod, ange verifieringskoden som du får och välj sedan Verifiera kod.

  5. Ange ett nytt lösenord och bekräfta lösenordet.

  6. Välj land och region, ange det namn som du vill visa, ange ett postnummer och klicka sedan på Skapa. Token returneras till https://jwt.ms och bör visas för dig.

  7. Nu kan du köra användarflödet igen och du bör kunna logga in med det konto som du skapade. Den returnerade token innehåller de anspråk som du har valt för land/region, namn och postnummer.

Anteckning

Upplevelsen "Kör användarflöde" är för närvarande inte kompatibel med SPA-svars-URL-typen med hjälp av auktoriseringskodflöde. Om du vill använda "Kör användarflöde" med dessa typer av appar registrerar du en svars-URL av typen "Webb" och aktiverar det implicita flödet enligt beskrivningen här.

Aktivera lösenordsåterställning via självbetjäning

Så här aktiverar du självbetjäning av lösenordsåterställning för användarflödet för registrering eller inloggning:

  1. Välj användarflödet för registrering eller inloggning som du skapade.
  2. Under Inställningar på den vänstra menyn väljer du Egenskaper.
  3. Under Lösenordskomplexitet väljer du Självbetjäning av lösenordsåterställning.
  4. Välj Spara.

Testa användarflödet

  1. Välj det användarflöde som du skapade för att öppna översiktssidan och välj sedan Kör användarflöde.
  2. För Program väljer du webbappen med namnet webapp1 som du registrerade tidigare. Svars-URL:en ska visa https://jwt.ms .
  3. Välj Kör användarflöde.
  4. På sidan för registrering eller inloggning väljer du Har du glömt ditt lösenord?.
  5. Kontrollera e-postadressen för det konto som du skapade tidigare och välj sedan Fortsätt.
  6. Nu har du möjlighet att ändra lösenordet för användaren. Ändra lösenordet och välj Fortsätt. Token returneras till https://jwt.ms och bör visas för dig.

Skapa ett användarflöde för profilredigering

Om du vill att användarna ska kunna redigera sin profil i ditt program använder du ett användarflöde för profilredigering.

  1. På menyn på sidan Azure AD B2C klientöversikt väljer du Användarflöden och sedan Nytt användarflöde.
  2. På sidan Skapa ett användarflöde väljer du användarflödet Profilredigering.
  3. Under Välj en version väljer du Rekommenderad och sedan Skapa.
  4. Ange ett Namn för användarflödet. Till exempel profileediting1.
  5. För Identitetsproviders väljer du Inloggning för lokalt konto.
  6. För Användarattribut väljer du de attribut som du vill att kunden ska kunna redigera i sin profil. Välj till exempel Visa mer och välj sedan både attribut och anspråk för Visningsnamn och Jobbtitel. Klicka på OK.
  7. Klicka på Skapa för att lägga till användarflödet. Ett prefix B2C_1 läggs automatiskt till i namnet.

Testa användarflödet

  1. Välj det användarflöde som du skapade för att öppna översiktssidan och välj sedan Kör användarflöde.
  2. För Program väljer du webbappen med namnet webapp1 som du registrerade tidigare. Svars-URL:en ska visa https://jwt.ms .
  3. Klicka på Kör användarflöde och logga sedan in med det konto som du skapade tidigare.
  4. Nu har du möjlighet att ändra visningsnamn och befattning för användaren. Klicka på Fortsätt. Token returneras till https://jwt.ms och bör visas för dig.

Tips

Den här artikeln förklarar hur du ställer in din klientorganisation manuellt. Du kan automatisera hela processen från den här artikeln. Automatiseringen distribuerar startpaketet Azure AD B2C SocialAndLocalAccountsWithMFA,som tillhandahåller registrering och inloggning, återställning av lösenord och redigeringsresor för profiler. Om du vill automatisera genomgången nedan går du till IEF-konfigurationsappen och följer anvisningarna.

Lägga till signerings- och krypteringsnycklar för Identity Experience Framework program

  1. Logga in på Azure-portalen.
  2. Kontrollera att du använder den katalog som innehåller din Azure AD B2C klientorganisation. Välj ikonen Kataloger + prenumerationer i portalens verktygsfält.
  3. I portalens inställningar | Sidan Kataloger + prenumerationer, leta upp Azure AD B2C katalog i listan Katalognamn och välj sedan Växla.
  4. I Azure Portal du efter och väljer Azure AD B2C.
  5. På översiktssidan går du till Principer och väljer Identity Experience Framework.

Skapa signeringsnyckeln

  1. Välj Principnycklar och välj sedan Lägg till.
  2. För Alternativ väljer du Generate .
  3. I Namn anger du TokenSigningKeyContainer . Prefixet B2C_1A_ kan läggas till automatiskt.
  4. För Nyckeltyp väljer du RSA.
  5. För Nyckelanvändning väljer du Signatur.
  6. Välj Skapa.

Skapa krypteringsnyckeln

  1. Välj Principnycklar och välj sedan Lägg till.
  2. För Alternativ väljer du Generate .
  3. I Namn anger du TokenEncryptionKeyContainer . Prefixet B2C_1A _ kan läggas till automatiskt.
  4. För Nyckeltyp väljer du RSA.
  5. För Nyckelanvändning väljer du Kryptering.
  6. Välj Skapa.

Registrera Identity Experience Framework program

Azure AD B2C kräver att du registrerar två program som används för att registrera och logga in användare med lokala konton: IdentityExperienceFramework, ett webb-API och ProxyIdentityExperienceFramework, en inbyggd app med delegerad behörighet till IdentityExperienceFramework-appen. Användarna kan registrera sig med en e-postadress eller ett användarnamn och ett lösenord för att få åtkomst till dina klientregistrerade program, vilket skapar ett "lokalt konto". Lokala konton finns bara i din Azure AD B2C klientorganisation.

Du behöver bara registrera dessa två program i din Azure AD B2C klientorganisation en gång.

Registrera IdentityExperienceFramework-programmet

Om du vill registrera ett program Azure AD B2C klientorganisationen kan du använda Appregistreringar programupplevelsen.

  1. Välj Appregistreringar och välj sedan Ny registrering.
  2. I Namn anger du IdentityExperienceFramework .
  3. Under Kontotyper som stöds väljer du Endast konton i den här organisationskatalogen.
  4. Under Omdirigerings-URI väljer du Webb och anger sedan , Azure AD B2C är ditt https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com domännamn för your-tenant-name klientorganisationen.
  5. Under Behörigheter markerar du kryssrutan Bevilja administratörsmedgivande för openid offline_access behörighet.
  6. Välj Register (Registrera).
  7. Registrera program-ID :t (klienten) för användning i ett senare steg.

Sedan exponerar du API:et genom att lägga till ett omfång:

  1. I den vänstra menyn under Hantera väljer du Exponera ett API.
  2. Välj Lägg till ett omfång och välj sedan Spara och fortsätt att acceptera standardprogram-ID:ts URI.
  3. Ange följande värden för att skapa ett omfång som tillåter anpassad principkörning i din Azure AD B2C klientorganisation:
    • Omfångsnamn:user_impersonation
    • Visningsnamn för administratörsmedgivande:Access IdentityExperienceFramework
    • Beskrivning av administratörsmedgivande:Allow the application to access IdentityExperienceFramework on behalf of the signed-in user.
  4. Välj Lägg till omfång

Registrera programmet ProxyIdentityExperienceFramework

  1. Välj Appregistreringar och välj sedan Ny registrering.
  2. I Namn anger du ProxyIdentityExperienceFramework .
  3. Under Kontotyper som stöds väljer du Endast konton i den här organisationskatalogen.
  4. Under Omdirigerings-URI använder du listrutan för att välja Offentlig klient/intern (mobile & Desktop).
  5. För Omdirigerings-URI anger du myapp://auth .
  6. Under Behörigheter markerar du kryssrutan Bevilja administratörsmedgivande för openid offline_access behörighet.
  7. Välj Register (Registrera).
  8. Registrera program-ID :t (klienten) för användning i ett senare steg.

Ange sedan att programmet ska behandlas som en offentlig klient:

  1. I den vänstra menyn under Hantera väljer du Autentisering.
  2. Under Avancerade inställningar går du till avsnittet Tillåt offentliga klientflöden och ställer in Aktivera följande mobil- och skrivbordsflödenJa.
  3. Välj Spara.
  4. Kontrollera att "allowPublicClient": true har angetts i programmanifestet:
    1. I den vänstra menyn under Hantera väljer du Manifest för att öppna programmanifestet.
    2. Hitta nyckeln allowPublicClient och se till att dess värde är inställt på true.

Bevilja nu behörigheter till det API-omfång som du exponerade tidigare i IdentityExperienceFramework-registreringen:

  1. I den vänstra menyn under Hantera väljer du API-behörigheter.
  2. Under Konfigurerade behörigheter väljer du Lägg till en behörighet.
  3. Välj fliken Mina API:er och välj sedan programmet IdentityExperienceFramework.
  4. Under Behörighet väljer du det user_impersonation som du definierade tidigare.
  5. Välj Lägg till behörigheter. Enligt anvisningarna väntar du några minuter innan du fortsätter till nästa steg.
  6. Välj Bevilja administratörsmedgivande för *<ditt klientnamn)>.
  7. Välj Ja.
  8. Välj Uppdatera och kontrollera sedan att "Beviljad för ..." visas under Status för omfånget.

Anpassat principstartpaket

Anpassade principer är en uppsättning XML-filer som du överför till Azure AD B2C klientorganisation för att definiera tekniska profiler och användarresor. Vi tillhandahåller startpaket med flera förbyggda principer som du kan använda för att komma igång snabbt. Vart och ett av dessa startpaket innehåller det minsta antalet tekniska profiler och användarresor som krävs för att uppnå de scenarier som beskrivs:

  • LocalAccounts – Tillåter endast användning av lokala konton.
  • SocialAccounts – Tillåter endast användning av sociala (eller federerade) konton.
  • SocialAndLocalAccounts – Tillåter användning av både lokala och sociala konton.
  • SocialAndLocalAccountsWithMFA – Aktiverar alternativ för social, lokal och multifaktorautentisering.

Varje startpaket innehåller:

  • Basfil – Det krävs få ändringar i basen. Exempel: TrustFrameworkBase.xml
  • Lokaliseringsfil – Det är här som lokaliseringsändringar görs i den här filen. Exempel: TrustFrameworkLocalization.xml
  • Tilläggsfil – Det är här som de flesta konfigurationsändringarna görs. Exempel: TrustFrameworkExtensions.xml
  • Förlitande partsfiler – Uppgiftsspecifika filer som anropas av ditt program. Exempel: SignUpOrSignin.xml, ProfileEdit.xml, PasswordReset.xml

I den här artikeln redigerar du XML-filerna för anpassade principfiler i startpaketet SocialAndLocalAccounts. Om du behöver en XML-redigerare kan Visual Studio kod, en enkel plattformsoberoende redigerare.

Hämta startpaketet

Hämta de anpassade principstartpaketen från GitHub och uppdatera sedan XML-filerna i startpaketet SocialAndLocalAccounts med Azure AD B2C klientorganisationens namn.

  1. Ladda ned .zip eller klona lagringsplatsen:

    git clone https://github.com/Azure-Samples/active-directory-b2c-custom-policy-starterpack
    
  2. I alla filer i katalogen SocialAndLocalAccounts ersätter du strängen med namnet på yourtenant din Azure AD B2C klientorganisation.

    Om namnet på din B2C-klientorganisation till exempel är contosotenant blir alla instanser yourtenant.onmicrosoft.com av contosotenant.onmicrosoft.com .

Lägga till program-ID:er i den anpassade principen

Lägg till program-ID:erna i tilläggsfilen TrustFrameworkExtensions.xml.

  1. Öppna SocialAndLocalAccounts/ TrustFrameworkExtensions.xml och leta upp elementet <TechnicalProfile Id="login-NonInteractive"> .
  2. Ersätt båda instanserna av IdentityExperienceFrameworkAppId med program-ID:t för identityExperienceFramework-programmet som du skapade tidigare.
  3. Ersätt båda instanserna av ProxyIdentityExperienceFrameworkAppId med program-ID:t för programmet ProxyIdentityExperienceFramework som du skapade tidigare.
  4. Spara filen.

Lägga till Facebook som identitetsprovider

Startpaketet SocialAndLocalAccounts innehåller Facebooks sociala inloggning. Facebook krävs inte för att använda anpassade principer, men vi använder det här för att demonstrera hur du kan aktivera federerad social inloggning i en anpassad princip.

Skapa Facebook-program

Använd stegen som beskrivs i Skapa ett Facebook-program för att hämta Facebooks app-ID och apphemlighet. Hoppa över kraven och resten av stegen i artikeln Konfigurera registrering och inloggning med ett Facebook-konto.

Skapa Facebook-nyckeln

Lägg till Facebook-programmets apphemlighet som en principnyckel. Du kan använda apphemligheten för det program som du har skapat som en del av förutsättningarna för den här artikeln.

  1. Logga in på Azure-portalen.
  2. Kontrollera att du använder den katalog som innehåller din Azure AD B2C klientorganisation. Välj ikonen Kataloger + prenumerationer i portalens verktygsfält.
  3. I portalens inställningar | Sidan Kataloger + prenumerationer, leta upp Azure AD B2C katalog i listan Katalognamn och välj sedan Växla.
  4. I Azure Portal du efter och väljer Azure AD B2C.
  5. På översiktssidan går du till Principer och väljer Identity Experience Framework.
  6. Välj Principnycklar och välj sedan Lägg till.
  7. För Alternativ väljer du Manual .
  8. I Namn anger du FacebookSecret . Prefixet B2C_1A_ kan läggas till automatiskt.
  9. I Hemlighet anger du Facebook-programmets apphemlighet från developers.facebook.com. Det här värdet är hemligheten, inte program-ID:t.
  10. För Nyckelanvändning väljer du Signatur.
  11. Välj Skapa.

Uppdatera TrustFrameworkExtensions.xml i anpassat principstartpaket

I filen SocialAndLocalAccounts/ TrustFrameworkExtensions.xml ersätter du värdet för med client_id Facebook-program-ID:t och sparar ändringarna.

<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>

Upload principerna

  1. Välj menyalternativet Identity Experience Framework I din B2C-klientorganisation i Azure Portal.
  2. Välj Upload anpassade principen.
  3. Ladda upp principfilerna i den här ordningen:
    1. TrustFrameworkBase.xml
    2. TrustFrameworkLocalization.xml
    3. TrustFrameworkExtensions.xml
    4. SignUpOrSignin.xml
    5. ProfileEdit.xml
    6. PasswordReset.xml

När du laddar upp filerna lägger Azure till prefixet B2C_1A_ till var och en.

Tips

Om XML-redigeraren stöder verifiering verifierar du filerna mot TrustFrameworkPolicy_0.3.0.0.xsd XML-schemat som finns i startpaketets rotkatalog. XML-schemaverifiering identifierar fel innan uppladdning.

Testa den anpassade principen

  1. Under Anpassade principer väljer du B2C_1A_signup_signin.
  2. För Välj program på översiktssidan för den anpassade principen väljer du webbappen med namnet webapp1 som du registrerade tidigare.
  3. Kontrollera att svars-URL:en är https://jwt.ms .
  4. Välj Kör nu.
  5. Registrera dig med en e-postadress.
  6. Välj Kör nu igen.
  7. Logga in med samma konto för att bekräfta att du har rätt konfiguration.
  8. Välj Kör nu igen och välj Facebook för att logga in med Facebook och testa den anpassade principen.

Nästa steg

I den här artikeln lärde du dig att:

  • Skapa ett användarflöde för registrering och inloggning
  • Skapa ett användarflöde för profilredigering
  • Skapa ett användarflöde för återställning av lösenord

Lär dig sedan hur du använder Azure AD B2C för att logga in och registrera användare i ett program. Följ exempelapparna som är länkade nedan:

Du kan också läsa mer i Azure AD B2C Architecture Deep Dive Series.