Snabbstart: Konfigurera ett klientprogram för åtkomst till ett webb-API
I den här snabbstarten tillhandahåller du begränsad och behörighetsbaserad åtkomst till ditt eget webb-API för en klientapp som registrerats med Microsofts identitetsplattform. Du ger även klientappen åtkomst till Microsoft Graph.
Genom att ange ett webb-API:s omfång i klientappens registrering kan klientappen hämta en åtkomsttoken som innehåller dessa omfång från Microsofts identitetsplattform. I koden kan webb-API:et sedan ge behörighetsbaserad åtkomst till sina resurser baserat på de omfång som finns i åtkomsttoken.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- Slutförande av snabbstart: Registrera ett program
- Slutförande av snabbstart: Konfigurera ett program för att exponera ett webb-API
Lägga till behörigheter för att komma åt ditt webb-API
Dricks
Stegen i den här artikeln kan variera något beroende på vilken portal du börjar från.
Åtkomst till API:er kräver konfiguration av åtkomstomfattningar och roller. Om du vill exponera dina webb-API:er för resursprogram för klientprogram kan du konfigurera åtkomstomfattningar och roller för API:et. Om du vill att ett klientprogram ska få åtkomst till ett webb-API konfigurerar du behörigheter för åtkomst till API:et i appregistreringen.
För att ge ett klientprogram åtkomst till ditt eget webb-API måste du ha två appregistreringar.
- En klientappsregistrering
- En webb-API-registrering med exponerade omfång
Diagrammet visar hur de två appregistreringarna relaterar till varandra, där klientappen har olika behörighetstyper och webb-API:et har olika omfång som klientprogrammet kan komma åt. I det här avsnittet lägger du till behörigheter till klientappens registrering.
När du har registrerat både klientappen och webb-API:et och du har exponerat API:et genom att skapa omfång kan du konfigurera klientens behörigheter till API:et genom att följa dessa steg:
Logga in på administrationscentret för Microsoft Entra som minst molnprogramadministratör.
Om du har åtkomst till flera klienter använder du ikonen Inställningar på den översta menyn för att växla till klientorganisationen som innehåller appregistreringen från menyn Kataloger + prenumerationer.
Bläddra till Identitetsprogram>> Appregistreringar och välj sedan klientprogrammet (inte webb-API:et).
Välj API-behörigheter och sedan Lägg till en behörighet och välj Mina API:er i sidofältet.
Välj det webb-API som du registrerade som en del av förhandskraven och välj Delegerade behörigheter.
Delegerade behörigheter är lämpliga för klientappar som har åtkomst till ett webb-API som den inloggade användaren och vars åtkomst bör begränsas till de behörigheter du väljer i nästa steg. Låt delegerade behörigheter vara markerade för det här exemplet.
Programbehörigheter gäller för program av tjänst- eller daemontyp som behöver åtkomst till ett webb-API som sig själva, utan användarinteraktion för inloggning eller medgivande. Om du inte har definierat programroller för webb-API:et är det här alternativet inaktiverat.
Under Välj behörigheter expanderar du resursen vars omfång du har definierat för webb-API:et och väljer de behörigheter som klientappen ska ha för den inloggade användarens räkning.
- Om du använde de exempelomfattningsnamn som angavs i föregående snabbstart bör du se Employees.Read.All och
Employees.Write.All
.
- Om du använde de exempelomfattningsnamn som angavs i föregående snabbstart bör du se Employees.Read.All och
Välj den behörighet som du skapade när du slutförde förutsättningarna, till exempel
Employees.Read.All
.Välj Lägg till behörigheter för att slutföra processen.
När du har lagt till behörigheter i ditt API bör du se de valda behörigheterna under Konfigurerade behörigheter. Följande bild visar exemplet Employees.Read.All delegerad behörighet som lagts till i klientappens registrering.
Du kanske också ser behörigheten User.Read för Microsoft Graph-API:et. Den här behörigheten läggs till automatiskt när du registrerar en app i Azure Portal.
Lägga till behörigheter för åtkomst till Microsoft Graph
Förutom att komma åt ditt eget webb-API för den inloggade användarens räkning kan ditt program också behöva komma åt eller ändra användarens (eller andra) data som lagras i Microsoft Graph. Eller så kan du ha en tjänst- eller daemonapp som behöver komma åt Microsoft Graph som sig själv och utföra åtgärder utan någon användarinteraktion.
Delegerad behörighet till Microsoft Graph
Konfigurera delegerad behörighet till Microsoft Graph för att göra det möjligt för klientprogrammet att utföra åtgärder för den inloggade användarens räkning, till exempel genom att läsa deras e-post eller ändra deras profil. Som standard tillfrågas användare av din klientapp när de loggar in för att samtycka till de delegerade behörigheter som du har konfigurerat för den.
På sidan Översikt i klientprogrammet väljer du API-behörigheter>Lägg till en behörighet>för Microsoft Graph
Välj delegerade behörigheter. Microsoft Graph exponerar många behörigheter, med de vanligaste som visas överst i listan.
Under Välj behörigheter väljer du följande behörigheter:
Behörighet beskrivning email
Visa användarnas e-postadress offline_access
Behålla åtkomst till data som du har gett åtkomst till openid
Logga in användare profile
Visa användarnas grundläggande profil Välj Lägg till behörigheter för att slutföra processen.
När du konfigurerar behörigheter uppmanas användarna av din app att logga in för att ge din app åtkomst till resurs-API:et för deras räkning.
Som administratör kan du också bevilja medgivande åt alla användare så att de inte uppmanas att göra det. Administratörsmedgivande beskrivs senare i avsnittet Mer om API-behörigheter och administratörsmedgivande i den här artikeln.
Programbehörighet till Microsoft Graph
Konfigurera programbehörigheter för ett program som måste autentiseras som sig självt utan användarinteraktion eller medgivande. Programbehörigheter används vanligtvis av bakgrundstjänster eller daemonappar som har åtkomst till ett API på ett "huvudlöst" sätt och av webb-API:er som har åtkomst till ett annat (underordnade) API.
I följande steg ger du behörighet till Microsoft Graphs Files.Read.All-behörighet som exempel.
- Logga in på administrationscentret för Microsoft Entra som minst molnprogramadministratör.
- Om du har åtkomst till flera klienter använder du ikonen Inställningar på den översta menyn för att växla till klientorganisationen som innehåller appregistreringen från menyn Kataloger + prenumerationer.
- Bläddra till Identitetsprogram>> Appregistreringar och välj sedan klientprogrammet.
- Välj API-behörigheter>Lägg till behörigheter> för Microsoft Graph-program.>
- Alla behörigheter som exponeras av Microsoft Graph visas under Välj behörigheter.
- Välj den behörighet eller de behörigheter som du vill bevilja ditt program. Du kan till exempel ha en daemonapp som söker igenom filer i din organisation och varnar om en specifik filtyp eller ett specifikt namn. Under Välj behörigheter expanderar du Filer och väljer sedan behörigheten
Files.Read.All
. - Välj Lägg till behörigheter.
- Vissa behörigheter, till exempel behörigheten Files.Read.All i Microsoft Graph, kräver administratörsmedgivande. Du beviljar administratörsmedgivande genom att välja knappen Bevilja administratörsmedgivande , som beskrivs senare i avsnittet Administratörsmedgivande .
Konfigurera klientautentiseringsuppgifter
Appar som använder programbehörigheter autentiseras som sig själva med sina egna autentiseringsuppgifter, utan att kräva någon användarinteraktion. Innan ditt program (eller API) kan komma åt Microsoft Graph, ditt eget webb-API eller ett annat API med hjälp av programbehörigheter måste du konfigurera klientappens autentiseringsuppgifter.
Mer information om hur du konfigurerar en apps autentiseringsuppgifter finns i avsnittet Lägg till autentiseringsuppgifter i Snabbstart: Registrera ett program med Microsofts identitetsplattform.
Mer information om API-behörigheter och administratörsmedgivande
Fönstret API-behörigheter i en appregistrering innehåller tabellen Konfigurerade behörigheter och knappen Administratörsmedgivande, som beskrivs i följande avsnitt.
Konfigurerade behörigheter
Tabellen Konfigurerade behörigheter i fönstret API-behörigheter visar listan över behörigheter som programmet kräver för grundläggande åtgärd – listan med nödvändig resursåtkomst (RRA). Användare, eller deras administratörer, måste godkänna dessa behörigheter innan de använder din app. Andra valfria behörigheter kan begäras senare vid körning (med dynamiskt medgivande).
Det här är den minsta listan över behörigheter som personer måste samtycka till för din app. Det kan finnas fler, men dessa kommer alltid att krävas. För säkerhet och för att hjälpa användare och administratörer att känna sig mer bekväma med att använda din app, be aldrig om något du inte behöver.
Du kan lägga till eller ta bort de behörigheter som visas i den här tabellen med hjälp av stegen ovan. Som administratör kan du bevilja administratörsmedgivande för den fullständiga uppsättningen av ett API:s behörigheter som visas i tabellen och återkalla medgivande för enskilda behörigheter.
Knappen Administratörsmedgivande
Med knappen Bevilja administratörsmedgivande för {din klient} kan en administratör bevilja administratörsmedgivande till de behörigheter som konfigurerats för programmet. När du väljer knappen visas en dialogruta där du uppmanas att bekräfta medgivandeåtgärden.
När medgivande har beviljats visas de behörigheter som krävs för administratörsmedgivande som att medgivande har beviljats:
Knappen Bevilja administratörsmedgivande är inaktiverad om du inte är administratör eller om inga behörigheter har konfigurerats för programmet. Om du har behörigheter som har beviljats men ännu inte konfigurerats, uppmanas du med knappen för administratörsmedgivande att hantera dessa behörigheter. Du kan lägga till dem i konfigurerade behörigheter eller ta bort dem.
Ta bort programbehörigheter
Det är viktigt att inte ge ett program för många behörigheter än vad som är nödvändigt. Återkalla administratörsmedgivande för en behörighet i ditt program.
- Gå till ditt program och välj API-behörigheter.
- Under Konfigurerade behörigheter väljer du de tre punkterna bredvid den behörighet som du vill ta bort och väljer Ta bort behörighet
- I popup-fönstret som visas väljer du Ja, ta bort för att återkalla administratörsmedgivandet för behörigheten.
Relaterat innehåll
Gå vidare till nästa snabbstart i serien för att lära dig hur du konfigurerar vilka kontotyper som kan komma åt ditt program. Du kanske till exempel bara vill begränsa åtkomsten till dessa användare i din organisation (enskild klientorganisation) eller tillåta användare i andra Microsoft Entra-klienter (flera klientorganisationer) och användare med personliga Microsoft-konton (MSA).