Share via


Logga in användare i ett .NET MAUI Android-exempelprogram

Den här guiden använder ett exempel på .NET Multi-platform App UI (.NET MAUI) för att visa hur du lägger till autentisering i ett Android-program med hjälp av en extern klientorganisation. Exempelprogrammet gör det möjligt för användare att logga in och logga ut. Exempelprogrammet .NET MAUI Android använder Microsoft Authentication Library (MSAL) för .NET för att hantera autentisering.

I den här artikeln utför du följande uppgifter:

  • Registrera ett .NET MAUI Android-program i den externa klientorganisationen.
  • Skapa ett inloggnings- och utloggningsanvändarflöde i den externa klientorganisationen.
  • Associera ditt .NET MAUI Android-program med användarflödet.
  • Uppdatera ett .NET MAUI Android-exempelprogram för att använda din egen information om externa klientorganisationer.
  • Kör och testa .NET MAUI Android-exempelprogrammet.

Förutsättningar

Registrera .NET MAUI Android-program

För att ditt program ska kunna logga in användare med Microsoft Entra måste microsoft Entras externa ID informeras om det program som 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:

  1. Logga in på administrationscentret för Microsoft Entra som minst programutvecklare.

  2. Om du har åtkomst till flera klienter använder du ikonenInställningar på den översta menyn för att växla till din externa klientorganisation från menyn Kataloger + prenumerationer.

  3. Bläddra till Identitetsprogram>> Appregistreringar.

  4. Välj + Ny registrering.

  5. På sidan Registrera ett program som visas;

    1. Ange ett beskrivande programnamn som visas för appens användare, till exempel ciam-client-app.
    2. Under Kontotyper som stöds väljer du Endast Konton i den här organisationskatalogen.
  6. Välj Registrera.

  7. Programmets översiktsfönster visas vid lyckad registrering. Registrera det program-ID (klient)-ID som ska användas i programmets källkod.

Följ dessa steg om du vill ange din apptyp för din appregistrering:

  1. Under Hantera väljer du Autentisering.
  2. På sidan Plattformskonfigurationer väljer du Lägg till en plattform och sedan alternativet Mobil- och skrivbordsprogram .
  3. För omdirigerings-URI:erna anger du msalEnter_the_Application_Id_Here://auth, ersätter Enter_the_Application_Id_Here med program-ID :t (klient)-ID:t som du kopierade tidigare och väljer sedan Konfigurera.
  4. Välj Spara för att spara ändringarna.

Bevilja API-behörigheter

  1. På sidan Appregistreringar väljer du det program som du skapade (till exempel ciam-client-app) för att öppna sidan Översikt.

  2. Under Hantera väljer du API-behörigheter.

  3. Under Konfigurerade behörigheter väljer du Lägg till en behörighet.

  4. Välj fliken Microsoft-API:er .

  5. Under Avsnittet Vanliga Microsoft-API:er väljer du Microsoft Graph.

  6. Välj alternativet Delegerade behörigheter .

  7. Under Avsnittet Välj behörigheter söker du efter och väljer både openid - och offline_access-behörigheter .

  8. Välj knappen Lägg till behörigheter.

  9. Nu har du tilldelat behörigheterna korrekt. Men eftersom klientorganisationen är en kunds klientorganisation kan konsumentanvändarena själva inte samtycka till dessa behörigheter. Du som administratör måste godkänna dessa behörigheter för alla användare i klientorganisationen:

    1. Välj Bevilja administratörsmedgivande för <ditt klientnamn> och välj sedan Ja.
    2. Välj Uppdatera och kontrollera sedan att Beviljat för <klientorganisationens namn> visas under Status för båda omfången.

Skapa ett användarflöde

Följ de här stegen för att skapa ett användarflöde som en kund kan använda för att logga in eller registrera sig för ett program.

  1. Logga in på administrationscentret för Microsoft Entra som minst en administratör för användarflöde för externt ID.

  2. Om du har åtkomst till flera klienter använder du ikonenInställningar på den översta menyn för att växla till din externa klientorganisation från menyn Kataloger + prenumerationer.

  3. Bläddra till Användarflöden för identiteter>för externa identiteter.>

  4. Välj + Nytt användarflöde.

  5. På sidan Skapa :

    1. Ange ett namn för användarflödet, till exempel SignInSignUpSample.

    2. I listan Identitetsprovidrar väljer du E-postkonton. Med den här identitetsprovidern kan användare logga in eller registrera sig med sin e-postadress.

      Kommentar

      Ytterligare identitetsprovidrar visas endast här när du har konfigurerat federation med dem. Om du till exempel konfigurerar federation med Google eller Facebook kan du välja dessa ytterligare identitetsprovidrar här.

    3. Under E-postkonton kan du välja ett av de två alternativen. I den här självstudien väljer du E-post med lösenord.

      • E-post med lösenord: Tillåter att nya användare registrerar sig och loggar in med en e-postadress som inloggningsnamn och lösenord som första faktorautentiseringsuppgifter.
      • E-post engångslösenord: Gör att nya användare kan registrera sig och logga in med en e-postadress som inloggningsnamn och e-post engångslösenord som sin första faktorautentiseringsuppgifter. Engångslösenord för e-post måste vara aktiverat på klientnivå (Alla identitetsprovidrar>skickar e-post engångslösenord) för att det här alternativet ska vara tillgängligt på användarflödesnivå.
    4. Under Användarattribut väljer du de attribut som du vill samla in från användaren vid registrering. Genom att välja Visa mer kan du välja attribut och anspråk för land/region, visningsnamn och postnummer. Välj OK. (Användare uppmanas endast att ange attribut när de registrerar sig för första gången.)

  6. Välj Skapa. Det nya användarflödet visas i listan Användarflöden . Uppdatera sidan om det behövs.

Om du vill aktivera självbetjäning av lösenordsåterställning använder du stegen i artikeln Aktivera självbetjäning av lösenordsåterställning .

Associera .NET MAUI Android-programmet med användarflödet

Även om många program kan associeras med ditt användarflöde kan ett enda program bara associeras med ett användarflöde. Ett användarflöde tillåter konfiguration av användarupplevelsen för specifika program. Du kan till exempel konfigurera ett användarflöde som kräver att användarna loggar in eller registrerar sig med e-postadress.

  1. På sidomenyn väljer du Identitet.

  2. Välj Externa identiteter och sedan Användarflöden.

  3. På sidan Användarflöden väljer du det användarflödesnamn som du skapade tidigare, till exempel SignInSignUpSample.

  4. Under Använd väljer du Program.

  5. Välj Lägg till program.

  6. Välj programmet i listan, till exempel ciam-client-app eller använd sökrutan för att hitta programmet och välj det.

  7. Välj Välj.

Klona eller ladda ned .NET MAUI Android-exempelprogram

Hämta exempelkoden för .NET MAUI Android-programmet genom att ladda ned .zip-filen eller klona .NET MAUI Android-exempelprogrammet från GitHub genom att köra följande kommando:

git clone https://github.com/Azure-Samples/ms-identity-ciam-dotnet-tutorial.git

Konfigurera .NET MAUI Android-exempelprogrammet

  1. I Visual Studio öppnar du filen ms-identity-ciam-dotnet-tutorial-main/1-Authentication/2-sign-in-maui/appsettings.json .
  2. Hitta platshållaren:
    1. Enter_the_Tenant_Subdomain_Here och ersätt den med underdomänen Katalog (klientorganisation). Om din primära klientdomän till exempel är contoso.onmicrosoft.comanvänder du contoso. Om du inte har ditt klientnamn kan du läsa klientinformationen.
    2. Enter_the_Application_Id_Here och ersätt det med program-ID :t (klient) för den app som du registrerade tidigare.
  3. I Visual Studio öppnar du filen ms-identity-ciam-dotnet-tutorial-main/1-Authentication/2-sign-in-maui/Platforms/Android/AndroidManifest.xml .
  4. Hitta platshållaren:
    1. Enter_the_Application_Id_Here och ersätt det med program-ID :t (klient) för den app som du registrerade tidigare.

Kör och testa .NET MAUI Android-program

.NET MAUI-appar är utformade för att köras på flera operativsystem och enheter. Du måste välja vilket mål du vill testa och felsöka appen med.

Ange felsökningsmålet i Visual Studio-verktygsfältet till den enhet som du vill felsöka och testa med. Följande steg visar hur du ställer in felsökningsmålet Android:

  1. Välj listrutan Felsök mål .
  2. Välj Android-emulatorer.
  3. Välj emulatorenhet.

Kör appen genom att trycka på F5 eller välj uppspelningsknappen överst i Visual Studio.

  1. Nu kan du testa .NET MAUI Android-exempelappen. När du har kört appen visas Android-appfönstret i en emulator:

    Skärmbild av inloggningsknappen i Android-programmet.

  2. I Android-fönstret som visas väljer du knappen Logga in . Ett webbläsarfönster öppnas och du uppmanas att logga in.

    Skärmbild av användarens uppmaning om att ange autentiseringsuppgifter i Android-programmet.

    Under inloggningsprocessen uppmanas du att bevilja olika behörigheter (så att programmet kan komma åt dina data). Vid lyckad inloggning och medgivande visar programskärmen huvudsidan.

    Skärmbild av huvudsidan i Android-programmet när du har loggat in.

Nästa steg