Logga in användare i iOS-exempelmobilappen (Swift) med inbyggd autentisering
Gäller för: personalhyresgäster
externa hyresgäster (lär dig mer)
I den här snabbstarten får du lära dig hur du kör ett iOS-exempelprogram som visar registrering, inloggning, utloggning och återställning av lösenordsscenarier med microsoft entra externt ID.
Förutsättningar
- Xcode
- En extern hyresgäst. Om du inte redan har en registrera dig för en kostnadsfri utvärderingsversion
Registrera en applikation
För att ditt program ska kunna logga in användare med Microsoft Entra måste Microsoft Entras externa ID vara medveten om den applikation du skapar. Appregistreringen upprättar en förtroenderelation mellan appen och Microsoft Entra. När du registrerar ett program genererar externt ID en unik identifierare som kallas ett program-ID (klient)-ID, ett värde som används för att identifiera din app när du skapar autentiseringsbegäranden.
Följande steg visar hur du registrerar din app i administrationscentret för Microsoft Entra:
Logga in på administrationscentret för Microsoft Entra som minst en Programutvecklare.
Om du har åtkomst till flera hyresgäster använder du ikonen Inställningar
i den översta menyn för att växla till den externa klienten från menyn Kataloger + prenumerationer.
Bläddra till Identity>Applications>App registrations.
Välj + Ny registrering.
På sidan Registrera ett program som visas.
- Ange ett meningsfullt program Namn som visas för appens användare, till exempel ciam-client-app.
- Under Kontotyper som stödsväljer du endast Konton i den här organisationskatalogen.
Välj Registrera.
Programmets översiktsfönster visas vid lyckad registrering. Anteckna applikationens (klient) ID för användning i din källkod.
Aktivera offentliga klient- och interna autentiseringsflöden
Om du vill ange att den här appen är en offentlig klient och kan använda intern autentisering aktiverar du offentliga klient- och inbyggda autentiseringsflöden:
- På sidan appregistreringar väljer du den appregistrering som du vill aktivera offentliga klient- och inbyggda autentiseringsflöden för.
- Under Hanteraväljer du autentisering.
- Under Avancerade inställningartillåter du offentliga klientflöden:
- För Aktivera följande mobil- och skrivbordsflöden välj Ja.
- För Aktivera intern autentiseringväljer du Ja.
- Välj knappen Spara.
Bevilja administratörsmedgivande
När du har registrerat ditt program tilldelas det behörigheten User.Read. Men eftersom klientorganisationen är en extern klientorganisation kan inte kundanvändarna själva samtycka till den här behörigheten. Du som klientadministratör måste godkänna den här behörigheten för alla användare i klientorganisationen:
På sidan Appregistreringar väljer du det program som du skapade (till exempel ciam-client-app) för att öppna sidan Översikt.
Under Hanteraväljer du API-behörigheter.
- Välj Bevilja administratörsmedgivande för <ditt klientnamn>och välj sedan Ja.
- Välj Uppdateraoch kontrollera sedan att Beviljas för <ditt klientnamn> visas under Status för behörigheten.
Skapa ett användarflöde
Följ de här stegen för att skapa ett användarflöde.
Logga in på Microsoft Entra administrationscenter åtminstone som en Applikationsutvecklare.
Om du har åtkomst till flera områden, kontrollera att du använder katalogen som innehåller din externa hyresgäst:
- Välj ikonen Kataloger + prenumerationer i verktygsfältet.
- I inställningarna för -portalen | Kataloger + prenumerationer sida, hitta din externa klientkatalog i listan Katalognamn och välj sedan Växla.
På sidomenyn väljer du Identitet.
Välj externa identiteter>användarflöden.
Välj + Nytt användarflöde.
På sidan Skapa:
Ange ett Namn för användarflödet, till exempel SignInSignUpSample.
I listan identitetsleverantörer, välj E-postkonton. Med den här identitetsprovidern kan användare logga in eller registrera sig med sin e-postadress.
Under e-postkontonkan du välja något av de två alternativen. I den här självstudien väljer du E-posta engångslösenord.
- e-post med lösenord: Tillåter att nya användare registrerar sig och loggar in med en e-postadress som inloggningsnamn och ett lösenord som sin första faktorautentiseringsuppgifter.
- E-post engångslösenord: Tillåter att nya användare registrerar sig och loggar in med en e-postadress som inloggningsnamn och e-postlösenord som första faktorautentiseringsuppgifter. Om du vill att det här alternativet ska vara tillgängligt på användarflödesnivå, kontrollerar du att du aktiverar engångslösenord för e-post (OTP) på klientorganisationsnivå (välj Alla identitetsprovidrar, och sedan för Engångslösenord för e-post välj Konfigurerat, välj alternativet Ja, och välj sedan Spara).
Under Användarattributkan du välja de attribut som du vill samla in från användaren vid registrering. I den här guiden väljer du Country/Region och City.
Välj Skapa. Det nya användarflödet visas i listan Användarflöden. Uppdatera sidan om det behövs.
Associera programmet med användarflödet
För att kundanvändarna ska kunna se registrerings- eller inloggningsupplevelsen när de använder din app måste du associera appen med ett användarflöde. Även om många program kan associeras med ditt användarflöde kan ett enda program bara associeras med ett användarflöde.
På sidomenyn väljer du Identitet.
Välj externa identiteteroch sedan Användarflöden.
På sidan Användarflöden väljer du Användarflödets namn du skapade tidigare, till exempel SignInSignUpSample.
Under Använd, välj Program.
Välj Lägg till program.
Välj programmet i listan, till exempel ciam-client-app eller använd sökrutan för att hitta programmet och välj det sedan.
Välj Välj.
När du har associerat din app med ett användarflöde kan du testa användarflödet genom att simulera en användares registrering eller inloggning med ditt program från administrationscentret för Microsoft Entra. Det gör du genom att använda stegen i Testa ditt registrerings- och inloggningsanvändarflöde.
Klona exempel på iOS-mobilprogram
Öppna Terminal och navigera till en katalog där du vill behålla koden.
Klona iOS-mobilappen från GitHub genom att köra följande kommando:
git clone https://github.com/Azure-Samples/ms-identity-ciam-native-auth-ios-sample.git
Navigera till katalogen där lagringsplatsen klonades:
cd ms-identity-ciam-native-auth-ios-sample
Konfigurera iOS-exempelmobilprogrammet
I Xcode öppnar du NativeAuthSampleApp.xcodeproj projekt.
Öppna NativeAuthSampleApp/Configuration.swift-fil.
Hitta platshållaren:
-
Enter_the_Application_Id_Here
och ersätt det med program-ID (klient)-ID:t för appen som du registrerade tidigare. -
Enter_the_Tenant_Subdomain_Here
och ersätt den med underdomänen Katalog (klient). Om din primära klientdomän till exempel ärcontoso.onmicrosoft.com
använder du contoso. Om du inte har klientunderdomänen kan du lära dig hur du läsa klientinformationen.
-
Not
Kom ihåg att välja ett schema att bygga och en destination där du kör de byggda produkterna. Varje schema innehåller en lista över verkliga eller simulerade enheter som representerar tillgängliga mål.
Kör och testa exempel på iOS-mobilprogram
Om du vill skapa och köra koden väljer du Kör på menyn Product i Xcode. Efter en lyckad version startar Xcode exempelappen i simulatorn.
Den här guiden testar E-posta engångslösenord användning. Ange en giltig e-postadress, välj Registrera digoch starta skärmen skicka kod:
När du har angett din e-postadress på föregående skärm skickar programmet en verifieringskod till den. När du har skickat den mottagna koden tar programmet dig tillbaka till föregående skärm och loggar automatiskt in dig.
Andra scenarier som det här exemplet stöder
Exempelappen stöder följande flöden:
- e-post + lösenord omfattar inloggnings- eller registreringsflöden med ett e-postmeddelande med lösenord.
- e-post + lösenordsregistrering med användarattribut omfattar registrering med e-post och lösenord och skicka användarattribut.
- Lösenordsåterställning omfattar självbetjänad lösenordsåterställning (SSPR).
- Åtkomstskyddat API omfattar anrop till ett skyddat API när användaren har registrerat sig eller loggat in och skaffat en åtkomsttoken.
- Återställning till webbläsare omfattar användningen av webbläsarbaserad autentisering som reservmekanism när användaren inte kan slutföra autentiseringen via intern autentisering av någon anledning.
Testa e-post med lösenordsflöde
I det här avsnittet testar du e-post med lösenordsflöde, med dess varianter som e-post med lösenordsregistrering med användarattribut och SSPR:
Använd stegen i skapa ett användarflöde för att skapa ett nytt användarflöde, men den här gången väljer du e-post med lösenord som autentiseringsmetod. Du måste konfigurera Country/Region och City som användarattribut. Du kan också ändra det befintliga användarflödet så att det använder e-post med lösenord (Välj externa identiteter>Användarflöden>SignInSignUpSample>Identitetsprovidrar>e-post med lösenord>Spara).
Följ stegen i associera programmet med det nya användarflödet för att lägga till en app i ditt nya användarflöde.
Kör exempelappen och välj sedan ellipsmenyn (...) för att öppna fler alternativ.
Välj det scenario som du vill testa, till exempel e-post + lösenord eller e-post + lösenordsregistrering med användarattribut eller Lösenordsåterställningoch följ sedan anvisningarna. För att testa lösenordsåterställningmåste du först registrera en användare och aktivera engångslösenord via e-post för alla användare i klientorganisationen.
Testa anrop till ett skyddat API-flöde
Följ stegen i Anropa ett skyddat webb-API i en iOS-exempelmobilapp med inbyggd autentisering för att anropa ett skyddat webb-API från en Android-exempelmobilapp.