Dela via


Konfigurera ett OpenID Connect OAuth-program från Microsoft Entra-appgalleriet

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

  2. Bläddra till Identity>Applications Enterprise-program.>

    Bladet Företagsprogram

  3. Välj Nytt program överst i dialogrutan.

    Knappen Nytt program

  4. I sökrutan skriver du namnet på programmet. Välj ett alternativ från resultatpanelen och registrera dig för programmet.

    Openid i resultatlistan

  5. På sidan Programnamn klickar du på knappen Registrera dig.

    Knappen Lägg till

    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.

  6. Du omdirigeras till sidan Programinloggning eller Microsoft Entra-ID för inloggningsuppgifter.

  7. 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.

  8. 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:

Autentiseringsflöde med OpenID Connect

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.

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:

  1. 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.

    Skärmbild som visar

    b. Klicka på Visa API-behörigheter.

    Skärmbild som visar sidan

    c. Klicka på Lägg till en behörighet.

    Skärmbild som visar avsnittet

    d. Klicka på Microsoft Graph.

    e. Välj nödvändiga alternativ från Delegerade behörigheter och Programbehörigheter.

    Graph API

  2. 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.

  3. Om användaren inte redan har autentiserats uppmanas Microsoft Entra-ID/auktorisera slutpunkt att logga in.

    En skärmbild av inloggningsprompten för kontot

  4. 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.

    Sida för medgivande

En vanlig användare kan godkänna vissa behörigheter. Andra behörigheter kräver en klientadministratörs 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.

Nästa steg

Konfigurera OIDC-baserad enkel inloggning (SSO) för ett program i din Microsoft Entra-klientorganisation