Autentisering och auktorisering i Microsoft Entra-ID

Slutförd

Microsoft Entra ID stöder moderna identitetsprotokoll, inklusive OAuth 2.0 och OpenID Connect. Bibliotek som MSAL4J hjälper program att använda dessa protokoll utan att själva implementera varje protokollinteraktion.

I scenariot med företagsportalen är Microsoft Entra ID identitetsprovidern. Portalen förlitar sig på den för att autentisera konton och utfärda token, men portalen har fortfarande ansvar för sina egna sessioner och auktoriseringsbeslut.

Autentisering

Autentisering upprättar och verifierar en identitet. För ett användaranvändande program svarar det på frågan "Vem är den här användaren?"

OpenID Connect lägger till ett identitetslager i OAuth 2.0. Ett program kan ta emot en ID-token som innehåller anspråk om en autentiserad användare och autentiseringshändelsen. ID-token är avsedd för klientprogrammet. det är inte den token som programmet skickar till Microsoft Graph.

Auktorisering

Auktorisering avgör om en identitet har behörighet att utföra en åtgärd eller komma åt data. Den besvarar frågan "Vad får den här användaren eller programmet göra?"

OAuth 2.0 tillhandahåller flöden för att hämta åtkomsttoken för skyddade API:er. I portalscenariot gör en Microsoft Graph åtkomsttoken att portalen kan begära specifika data för den inloggade användarens räkning, med de beviljade behörigheterna.

Följande tabell skiljer portalens autentiserings- och auktoriseringsansvar.

Bekymmer Exempel i portalen
Autentisering Microsoft Entra ID autentiserar ett konto och portalen tar emot en ID-token via inloggningsflödet.
API-auktorisering En Microsoft Graph åtkomsttoken har delegerad behörighet att läsa den inloggade användarens profil.
Programauktorisering Portalen tillämpar eventuella ytterligare regler som styr åtkomsten till sina egna sidor eller affärsåtgärder.

Lyckad autentisering ger inte automatiskt åtkomst till varje sida eller API. Enbart klientmedlemskap fastställer till exempel inte att en person är anställd.

Programregistrering

En appregistrering beskriver en app i Microsoft Entra ID. Den fastställer programmets identitet och registrerar inställningar, till exempel dess inloggningsmålgrupp och omdirigerings-URI:er. Registreringar kan hanteras via Azure-portalen, Azure CLI eller Microsoft Graph API:er. Ingen registrering skapas i den här modulen.

De kontotyper som stöds definierar inloggningspubliken:

  • Endast konton i den här organisationskatalogen anger en målgrupp för en enskild klientorganisation, inklusive användar- och gästkonton i den valda klientorganisationen.
  • Konton i valfri organisationskatalog tillåter konton från klientorganisationer i Microsoft Entra i en design för flera klientorganisationer.
  • Konton i alla organisationskataloger och personliga Microsoft konton tillåter även personliga Microsoft konton.
  • Personliga Microsoft konton begränsar målgruppen till personliga Microsoft konton, till exempel Outlook.com konton.

Registreringen har ett program-ID (klient)-ID som identifierar programmet i protokollbegäranden. Ett konfidentiellt webbprogram använder också en programautentiseringsuppgift för att autentisera sig själv under tokenförvärvet. Klient-ID:t och autentiseringsuppgifterna har olika syften: en identifierare är inte en hemlighet.

Nästa enhet tolkar en exempelregistrering och ansluter inställningarna till kodexemplen.