Konfigurera ett OpenID Connect OAuth-program från Microsoft Entra-appgalleriet
Processen att lägga till ett OpenID-program från galleriet
Logga in på administrationscentret för Microsoft Entra som minst molnprogramadministratör.
Bläddra till Identity>Applications Enterprise-program.>
Välj Nytt program överst i dialogrutan.
I sökrutan skriver du namnet på programmet. Välj ett alternativ från resultatpanelen och registrera dig för programmet.
På sidan Programnamn klickar du på knappen Registrera dig.
Kommentar
Här bör administratören för klientorganisationen välja registreringsknappen och ge medgivande till programmet. Programmet läggs sedan till i den externa klientorganisationen, där du kan utföra konfigurationerna. Du behöver inte lägga till programmet uttryckligen.
Du omdirigeras till sidan Programinloggning eller Microsoft Entra-ID för inloggningsuppgifter.
Efter lyckad autentisering godkänner du medgivande från sidan för medgivande. Sedan visas programmets startsida.
Kommentar
Du kan endast lägga till en instans av programmet. Om du redan har lagt till en och försöker ge medgivande igen läggs den därmed inte till i klienten på nytt. Därför kan du endast logiskt använda en appinstans i klienten.
Följ videon nedan för att lägga till ett OpenID-program från galleriet.
Autentiseringsflöde med OpenID Connect
Det mest grundläggande inloggningsflödet innehåller följande steg:
Program för flera klientorganisationer
Ett program för flera klientorganisationer är avsett att användas i många organisationer, inte bara en enda. Det kallas vanligen för SaaS-webbprogram (Software as a Service) och skrivs av en oberoende programvaruleverantör (ISV).
Program för flera klientorganisationer måste tillhandahållas i varje katalog där de kommer att användas. De kräver att användaren eller administratören ger sitt medgivande till att registrera dem. Medgivandeprocessen startar när ett program har registrerats i katalogen och ges åtkomst till Graph API eller kanske någon annan webb-API. När en användare eller administratör från en annan organisation registrerar sig för att använda programmet visar en dialogruta de behörigheter som programmet behöver.
Användaren eller administratören kan sedan ge medgivande till programmet. Medgivandet ger programmet åtkomst till angivna data och slutligen registreras programmet i katalogen.
Kommentar
Om du gör ditt program tillgängligt för användare i flera kataloger behöver du en mekanism för att avgöra vilken klientorganisation de finns i. Ett program för en enda klientorganisation behöver bara söka i en egen katalog för en användare. Ett program med flera klientorganisationer måste identifiera en specifik användare från alla kataloger i Microsoft Entra-ID.
För att utföra den här uppgiften tillhandahåller Microsoft Entra-ID en gemensam autentiseringsslutpunkt där alla program med flera klienter kan dirigera inloggningsbegäranden i stället för en klientspecifik slutpunkt. Den här slutpunkten är https://login.microsoftonline.com/common
avsedd för alla kataloger i Microsoft Entra-ID. En klientspecifik slutpunkt kan vara https://login.microsoftonline.com/contoso.onmicrosoft.com
.
Den gemensamma slutpunkten är viktig att överväga på när du utvecklar ditt program. Du behöver den logik som krävs för att hantera flera klienter vid inloggning, utloggning och tokenverifiering.
Som standard främjar Microsoft Entra-ID program med flera klienter. De är lätta att komma åt mellan olika organisationer och de är lätta att använda när du har godkänt medgivande.
Ramverk för medgivande
Du kan använda Microsoft Entra-ramverket för medgivande för att utveckla webbprogram för flera klienter och interna klientprogram. Dessa program tillåter inloggning efter användarkonton från en Microsoft Entra-klientorganisation, som skiljer sig från den där programmet är registrerat. De kan också behöva komma åt webb-API:er som:
- Microsoft Graph API för åtkomst till Microsoft Entra ID, Intune och tjänster i Microsoft 365.
- Övriga för Microsoft-tjänsters API:er.
- Dina egna webb-API:er.
Ramverket är baserat på att en användare eller administratör ger sitt medgivande till ett program som ber att få registreras i deras katalog. Registreringen kan handla om åtkomst till katalogdata. När tillstånd har getts kan klientprogrammet anropa Microsoft Graph API för användarens räkning och använda informationen vid behov.
Microsoft Graph API ger åtkomst till data i Microsoft 365, till exempel:
- Kalendrar och meddelanden från Exchange.
- Platser och listor från SharePoint.
- Dokument från OneDrive.
- Bärbara datorer från OneNote.
- Uppgifter från Planner.
- Arbetsböcker från Excel.
Graph API ger också åtkomst till användare och grupper från Microsoft Entra-ID och andra dataobjekt från fler Microsoft-molntjänster.
Följande steg visar hur medgivande fungerar för programutvecklare och användaren:
Anta att du har ett webbklientprogram som behöver begära särskild behörighet för att komma åt en resurs eller ett API. Azure-portalen används för att deklarera behörighetsbegäranden vid konfigurationen. Precis som andra konfigurationsinställningar blir de en del av programmets Microsoft Entra-registreringar. För sökvägen för behörighetsbegäran behöver du följa stegen nedan:
a. Klicka på Appregistreringar från menyns vänstra sida och öppna programmet genom att skriva programnamnet i sökrutan.
b. Klicka på Visa API-behörigheter.
c. Klicka på Lägg till en behörighet.
d. Klicka på Microsoft Graph.
e. Välj nödvändiga alternativ från Delegerade behörigheter och Programbehörigheter.
Tänk på att programmets behörigheter har uppdaterats. Programmet körs och en användare är på väg att använda det för första gången. Först måste programmet hämta en auktoriseringskod från Microsoft Entra-ID/auktorisera slutpunkten. Auktoriseringskoden kan sedan användas för att få en ny åtkomst och uppdatera token.
Om användaren inte redan har autentiserats uppmanas Microsoft Entra-ID/auktorisera slutpunkt att logga in.
När användaren har loggat in avgör Microsoft Entra-ID om användaren behöver visas på en medgivandesida. Den här bedömningen baseras på om användaren (eller organisationens administratör) redan har beviljat programmets medgivande.
Om medgivande inte har beviljats uppmanar Microsoft Entra användaren att ge sitt medgivande och visar de behörigheter som krävs för att det ska fungera. De behörigheter som visas i dialogrutan medgivande matchar de som valts i de delegerade behörigheterna.
En vanlig användare kan godkänna vissa behörigheter. Andra behörigheter kräver en klientadministratörs medgivande.
Skillnaden mellan administratörens och användarens medgivande
Som administratör kan du även samtycka till ett programs delegerade behörigheter för samtliga användare i klienten. Administratörens medgivande förhindrar att dialogrutan för medgivande visas för varje användare i klienten. Användare som har administratörsrollen kan ge sitt medgivande. Välj Hantera>API-behörigheter. Under Bevilja medgivande väljer du Bevilja administratörsmedgivande för.
Kommentar
Att bevilja uttryckligt medgivande med hjälp av knappen Bevilja administratörsmedgivande krävs nu för ensidesprogram (SPA) som använder MSAL.js. Annars misslyckas programmet när åtkomsttoken begärs.
Endast appbehörigheter kräver alltid en klientadministratörs medgivande. Om ditt program begär en appspecifik behörighet och en användare försöker logga in på programmet visas ett felmeddelande. Meddelandet säger att användaren inte kan samtycka.
Om programmet använder behörigheter som kräver administratörens medgivande måste det finnas en gest som administratören kan starta åtgärden med, till exempel via en knapp eller länk. Den begäran som programmet skickar för den här åtgärden är den vanliga auktoriseringsbegäran för OAuth2/OpenID Connect. Denna begäran innehåller frågesträngparametern prompt=admin_consent.
När administratören har samtyckt och tjänstens huvudnamn har skapats i kundens klientorganisation behöver senare inloggningsbegäranden inte parametern prompt=admin_consent . Eftersom administratören har bestämt att behörigheterna som krävs är godtagbara kan tillfrågas inga andra användare i klienten om medgivande från den tidpunkten och framåt.
En klientadministratör kan inaktivera möjligheten för vanliga användare att samtycka till program. Om den här funktionen har inaktiverats krävs alltid administratörens godkännande för program som ska användas i klienten. Om du vill testa programmet med slutanvändarens medgivande inaktiverat kan du byta konfiguration i Azure-portalen. Den finns i avsnittet Användarinställningar under Företagsprogram.
Parametern prompt=admin_consent kan även användas av program som begär behörighet som inte kräver administratörens medgivande. Ett exempel är ett program som kräver en upplevelse där klientadministratören "registrerar sig" en gång och inga andra användare uppmanas att ge sitt medgivande från den tidpunkten.
Anta att ett program kräver administratörens medgivande och en administratör loggar in utan att parametern prompt=admin_consent skickas. När administratören godkänner programmet gäller det endast för hans/hennes användarkonto. Vanliga användare kan fortfarande inte logga in eller godkänna programmet. Den här funktionen är användbart om du vill ge klientadministratören möjlighet att utforska ditt program innan åtkomst ges andra användare.