Dela via


Logga in användare i exempelappen för Android (Kotlin)

Den här guiden visar hur du konfigurerar ett Android-exempelprogram för att logga in användare.

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

  • Registrera ett program i administrationscentret för Microsoft Entra.
  • Lägg till en URL för plattformsomdirigering.
  • Aktivera offentliga klientflöden.
  • Uppdatera Exempelfilen för Android-konfigurationskoden för att använda ditt eget externa Microsoft Entra-ID för kundklientinformation.
  • Kör och testa android-exempelmobilprogrammet.

Förutsättningar

Registrera en app

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 klient från menyn Kataloger + prenumerationer.

  3. Bläddra till Appregistreringar för identitetsprogram>>.

  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.

Lägga till en url för plattformsomdirigering

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 väljer sedan Alternativet Android .
  3. Ange projektets paketnamn. Om du laddade ned exempelkoden är com.azuresamples.msaldelegatedandroidkotlinsampleappdet här värdet .
  4. I avsnittet Signaturhash i fönstret Konfigurera din Android-app väljer du Generera en utvecklingssignaturhash. Detta ändras för varje utvecklingsmiljö. Kopiera och kör KeyTool-kommandot för operativsystemet i terminalen.
  5. Ange den signaturhash som genererats av KeyTool.
  6. Välj Konfigurera.
  7. Kopiera MSAL-konfigurationen från Android-konfigurationsfönstret och spara den för senare appkonfiguration.
  8. Välj Klar.

Aktivera offentligt klientflöde

Följ dessa steg för att identifiera din app som en offentlig klient:

  1. Under Hantera väljer du Autentisering.

  2. Under Avancerade inställningar väljer du Ja för Tillåt offentliga klientflöden.

  3. Välj Spara för att spara dina ändringar.

  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. Från listan Konfigurerade behörigheter har programmet tilldelats behörigheten User.Read . Men eftersom klientorganisationen är en extern klientorganisation kan inte konsumentanvändare själva samtycka till den här behörigheten. Du som administratör måste godkänna den här behörigheten 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.

Klona android-exempelmobilprogram

Om du vill hämta exempelprogrammet kan du antingen klona det från GitHub eller ladda ned det som en .zip fil.

  • Om du vill klona exemplet öppnar du en kommandotolk och navigerar till den platsen där du vill skapa projektet och anger följande kommando:

    git clone https://github.com/Azure-Samples/ms-identity-ciam-browser-delegated-android-sample
    

Konfigurera android-exempelprogrammet

Om du vill aktivera autentisering och åtkomst till Microsoft Graph-resurser konfigurerar du exemplet genom att följa dessa steg:

  1. Öppna det projekt som du klonade i Android Studio.

  2. Öppna filen /app/src/main/res/raw/auth_config_ciam.json .

  3. Hitta platshållaren:

    • Enter_the_Application_Id_Here och ersätt det med program-ID :t (klient) för den app som du registrerade tidigare.
    • Enter_the_Redirect_Uri_Here och ersätt det med värdet för redirect_uri i konfigurationsfilen för Microsoft Authentication Library (MSAL) som du laddade ned tidigare när du lade till url:en för omdirigering av plattformen.
    • 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 känner till klientorganisationens underdomän kan du läsa klientinformationen.
  4. Öppna filen /app/src/main/AndroidManifest.xml .

  5. Hitta platshållaren:

    • ENTER_YOUR_SIGNATURE_HASH_HERE och ersätt den med den signaturhash som du genererade tidigare när du lade till omdirigerings-URL:en för plattformen.
  6. Öppna filen /app/src/main/java/com/azuresamples/msaldelegatedandroidkotlinsampleapp/MainActivity.kt .

  7. Hitta egenskapen med namnet scopes och ange de omfång som registrerats i Bevilja administratörsmedgivande. Om du inte har registrerat några omfång kan du lämna den här omfångslistan tom.

    private const val scopes = "" // Developers should set the respective scopes of their Microsoft Graph resources here. For example, private const val scopes = "api://{clientId}/{ToDoList.Read} api://{clientId}/{ToDoList.ReadWrite}"
    

Du har konfigurerat appen och den är redo att köras.

Kör och testa android-exempelmobilprogrammet

Följ dessa steg för att skapa och köra din app:

  1. I verktygsfältet väljer du din app på menyn Kör konfigurationer.

  2. I målenhetsmenyn väljer du den enhet som du vill köra appen på.

    Om du inte har konfigurerat några enheter måste du antingen skapa en virtuell Android-enhet för att använda Android-emulatorn eller ansluta en fysisk Android-enhet.

  3. Klicka på knappen Kör.

  4. Välj Hämta token interaktivt för att begära en åtkomsttoken.

  5. Om du väljer API – Utför GET för att anropa ett skyddat ASP.NET Core-webb-API får du ett fel.

Mer information om hur du anropar ett skyddat webb-API finns i nästa steg

Nästa steg