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 konfigurerar. 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 via helt konfigurerbara anpassade principer. Stegen som krävs i den här artikeln skiljer sig åt 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 avgöra hur användarna 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-klient (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örhandsversionen (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 för 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 registrerings- och inloggningsupplevelser med en enda konfiguration. Användare av ditt program leds längs rätt sökväg beroende på kontexten.

  1. Logga in på Azure-portalen.

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

  3. I portalinställningarna | På sidan Kataloger + prenumerationer letar du upp din Azure AD B2C-katalog i listan Katalognamn och väljer sedan Växla.

  4. I Azure Portal söker 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 registrerings- och inloggningsflödet markerat

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

    Skapa användarflödessida i Azure Portal med egenskaper markerade

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

  9. För Identitetsprovidrar väljer du Email registrering.

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

    Urvalssida för attribut och anspråk med tre anspråk markerade

  11. Välj Skapa för att lägga till användarflödet. Prefixet 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.

  2. Längst upp på översiktssidan för användarflödet väljer du Kör användarflöde. Ett fönster öppnas till höger på sidan.

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

  4. Välj 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

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

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

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

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

Funktionen "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 funktionen "Kör användarflöde" med den här typen 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 i den vänstra menyn väljer du Egenskaper.
  3. Under Lösenordskonfiguration 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 webbprogrammet med namnet webapp1 som du registrerade tidigare. Svars-URL:en bör visa https://jwt.ms.
  3. Välj Kör användarflöde.
  4. På registrerings- eller inloggningssidan väljer 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 ska visas för dig.

Skapa ett användarflöde för profilredigering

Om du vill göra det möjligt för användare att redigera sin profil i ditt program använder du ett användarflöde för profilredigering.

  1. På menyn på Azure AD B2C-klientöversiktssidan 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 Rekommenderat och sedan Skapa.
  4. Ange ett Namn för användarflödet. Till exempel profileediting1.
  5. För Identitetsprovidrar går du till Lokala konton och väljer Email registrering.
  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 Jobbrubrik. Välj OK.
  7. Välj Skapa för att lägga till användarflödet. Ett prefix på 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.
  2. Längst upp på översiktssidan för användarflöde väljer du Kör användarflöde. Ett fönster öppnas till höger på sidan.
  3. För Program väljer du webbprogrammet med namnet webapp1 som du registrerade tidigare. Svars-URL:en ska visa https://jwt.ms.
  4. Välj Kör användarflöde och logga sedan in med det konto som du skapade tidigare.
  5. Nu har du möjlighet att ändra visningsnamnet och jobbrubriken för användaren. Välj Fortsätt. Token returneras till https://jwt.ms och ska visas för dig.

Tips

Den här artikeln beskriver hur du konfigurerar klientorganisationen manuellt. Du kan automatisera hela processen från den här artikeln. Automating distribuerar Azure AD B2C SocialAndLocalAccountsWithMFA-startpaketet, som tillhandahåller registrerings- och inloggnings-, lösenordsåterställnings- och profilredigeringsresor. Om du vill automatisera genomgången nedan går du till IEF-installationsappen 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 katalogen som innehåller din Azure AD B2C-klientorganisation. Välj ikonen Kataloger + prenumerationer i portalens verktygsfält.
  3. I portalinställningarna | På sidan Kataloger + prenumerationer hittar du din Azure AD B2C-katalog i listan Katalognamn och väljer sedan Växla.
  4. I Azure Portal söker du efter och väljer Azure AD B2C.
  5. På översiktssidan under Principer väljer du Identity Experience Framework.

Skapa signeringsnyckeln

  1. Välj Principnycklar och 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 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 intern 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 i din Azure AD B2C-klientorganisation kan du använda Appregistreringar-upplevelsen.

  1. Välj Appregistreringar och välj sedan Ny registrering.
  2. För 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 https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.comsedan , där your-tenant-name är ditt Azure AD B2C-klientdomännamn.
  5. Under Behörigheter markerar du kryssrutan Bevilja administratörsmedgivande till openid och offline_access behörigheter .
  6. Välj Register (Registrera).
  7. Registrera program-ID:t (klient) för användning i ett senare steg.

Exponera sedan 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-URI:n.
  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
    • Admin visningsnamn för medgivande:Access IdentityExperienceFramework
    • Admin medgivandebeskrivning:Allow the application to access IdentityExperienceFramework on behalf of the signed-in user.
  4. Välj Lägg till omfång

Registrera ProxyIdentityExperienceFramework-programmet

  1. Välj Appregistreringar och välj sedan Ny registrering.
  2. För 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 (mobilt & skrivbord).
  5. För Omdirigerings-URI anger du myapp://auth.
  6. Under Behörigheter markerar du kryssrutan Bevilja administratörsmedgivande till openid och offline_access behörigheter .
  7. Välj Register (Registrera).
  8. Registrera program-ID:t (klient) 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 i avsnittet Tillåt offentliga klientflöden anger du Aktivera följande mobil- och skrivbordsflöden till Ja.
  3. Välj Spara.
  4. Kontrollera att "allowPublicClient": true anges 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 API-omfånget 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 omfång 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 "Beviljas för ..." visas under Status för omfånget.

Startpaket för anpassad princip

Anpassade principer är en uppsättning XML-filer som du laddar upp till din Azure AD B2C-klientorganisation för att definiera tekniska profiler och användarresor. Vi tillhandahåller startpaket med flera fördefinierade principer så att du snabbt kan komma igång. Var och en av dessa startpaket innehåller det minsta antalet tekniska profiler och användarresor som behövs för att uppnå de scenarier som beskrivs:

  • LocalAccounts – Aktiverar endast användning av lokala konton.
  • SocialAccounts – Aktiverar endast användning av sociala (eller federerade) konton.
  • SocialAndLocalAccounts – Aktiverar användning av både lokala och sociala konton.
  • SocialAndLocalAccountsWithMFA – Aktiverar sociala, lokala och multifaktorautentiseringsalternativ.

Varje startpaket innehåller:

  • Basfil – Några ändringar krävs i basen. Exempel: TrustFrameworkBase.xml
  • Lokaliseringsfil – I den här filen görs lokaliseringsändringar. Exempel: TrustFrameworkLocalization.xml
  • Tilläggsfil – I den här filen görs de flesta konfigurationsändringar. 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 principer i startpaketet SocialAndLocalAccounts . Om du behöver en XML-redigerare kan du prova Visual Studio Code, en enkel plattformsoberoende redigerare.

Hämta startpaketet

Hämta startpaketen för anpassad princip från GitHub och uppdatera sedan XML-filerna i startpaketet SocialAndLocalAccounts med ditt Azure AD B2C-klientnamn.

  1. Ladda ned .zip-filen 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 yourtenant med namnet på din Azure AD B2C-klientorganisation.

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

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

Lägg till program-ID:na i filnamnstillä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 det ProxyIdentityExperienceFramework-program som du skapade tidigare.
  4. Spara filen.

Lägga till Facebook som identitetsprovider

Startpaketet SocialAndLocalAccounts innehåller facebook social inloggning. Facebook krävs inte för att använda anpassade principer, men vi använder det här för att visa hur du kan aktivera federerad social inloggning i en anpassad princip. Om du inte behöver aktivera federerad social inloggning använder du localaccounts-startpaketet i stället och hoppar över avsnittet Lägg till Facebook som identitetsprovider .

Skapa Facebook-program

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

Skapa Facebook-nyckeln

Lägg till ditt Facebook-programs apphemlighet som en principnyckel. Du kan använda apphemligheten för det program som du skapade som en del av den här artikelns krav.

  1. Logga in på Azure-portalen.
  2. Kontrollera att du använder katalogen som innehåller din Azure AD B2C-klientorganisation. Välj ikonen Kataloger + prenumerationer i portalens verktygsfält.
  3. I portalinställningarna | På sidan Kataloger + prenumerationer letar du upp din Azure AD B2C-katalog i listan Katalognamn och väljer sedan Växla.
  4. I Azure Portal söker 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 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 ditt Facebook-programs 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 startpaketet för anpassad princip

SocialAndLocalAccounts/TrustFrameworkExtensions.xml I filen ersätter du värdet client_id för med 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>

Ladda upp principerna

  1. Välj menyalternativet Identity Experience Framework i B2C-klientorganisationen i Azure Portal.
  2. Välj Överför anpassad princip.
  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 validering validerar du filerna mot TrustFrameworkPolicy_0.3.0.0.xsd XML-schemat som finns i rotkatalogen i startpaketet. XML-schemavalidering identifierar fel innan du laddar upp.

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 tidigare registrerade.
  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 djupdykningsserien Azure AD B2C-arkitektur.