Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Als u tokens wilt verifiëren en verkrijgen, initialiseert u een nieuwe openbare of vertrouwelijke cliënttoepassing in uw code. U kunt verschillende configuratieopties instellen wanneer u de cliënt-app initialiseert in de Microsoft Authentication Library (MSAL). Deze opties kunnen in twee groepen worden verdeeld:
- Registratieopties, waaronder:
- Autoriteit (samengesteld uit de instantie van de id-provider en de doelgroep voor aanmelden voor de app, en mogelijk de tenant-id)
- Client-id
- Omleidings-URI
- Clientgeheim (voor vertrouwelijke clienttoepassingen)
- Certificaat (voor vertrouwelijke clienttoepassingen)
- Federatieve identiteitsreferenties (voor vertrouwelijke clienttoepassingen)
- Opties voor logboekregistratie, waaronder logniveau, beheer van persoonsgegevens en de naam van de component die gebruik maakt van de bibliotheek
Instantie
De instantie is een URL die een map aangeeft waaruit MSAL tokens kan aanvragen.
Algemene instanties zijn:
| URL's van algemene instanties | Wanneer gebruiken |
|---|---|
https://login.microsoftonline.com/<tenant>/ |
Uitsluitend gebruikers van een specifieke organisatie aanmelden. De <tenant> in de URL is de tenant-id van de Microsoft Entra-tenant (een GUID) of het bijbehorende tenantdomein. |
https://login.microsoftonline.com/common/ |
Gebruikers met werk- en schoolaccounts of persoonlijke Microsoft-accounts aanmelden. |
https://login.microsoftonline.com/organizations/ |
Gebruikers met werk- en schoolaccounts aanmelden. |
https://login.microsoftonline.com/consumers/ |
Uitsluitend gebruikers met persoonlijke Microsoft-accounts (MSA) aanmelden. |
De instantie die u in uw code opgeeft, moet consistent zijn met de ondersteunde accounttypen die u hebt opgegeven voor de app in app-registraties in Azure Portal.
De instantie kan een van de volgende zijn:
- Een Microsoft Entra-cloudinstantie.
- Een Azure AD B2C-instantie. Zie B2C-details.
- Een instantie van Active Directory Federation Services (AD FS). Zie AD FS-ondersteuning.
Microsoft Entra-cloudinstanties hebben twee onderdelen:
- De provider-instantie voor identiteit instantie
- De aanmeldingsdoelgroep voor de app
Het exemplaar en de doelgroep kunnen worden samengevoegd en opgegeven als de instantie-URL. In dit diagram ziet u hoe de instantie-URL is samengesteld:
Cloud-exemplaar
Het exemplaar wordt gebruikt om op te geven of uw app gebruikers aanmeldt vanuit de algemene Azure-cloud of vanuit nationale clouds. Met MSAL in uw code kunt u het Azure-cloudexemplaar instellen door gebruik te maken van een opsomming of door de URL door te geven aan het nationale cloudexemplaar als het Instance-lid.
MSAL.NET genereert een expliciete uitzondering als beide Instance en AzureCloudInstance zijn opgegeven.
Als u geen exemplaar opgeeft, is uw app gericht op het openbare Azure-cloudexemplaren (het exemplaar van de URL https://login.onmicrosoftonline.com).
Doelgroep van de toepassing
De aanmeldingsdoelgroep is afhankelijk van de bedrijfsbehoeften voor uw app:
- Als u een LOB-ontwikkelaar (Line-Of-Business) bent, produceert u waarschijnlijk een toepassing met één tenant die alleen in uw organisatie wordt gebruikt. Geef in dat geval de organisatie op basis van de tenant-id (de id van uw Microsoft Entra-exemplaar) of op een domeinnaam die is gekoppeld aan het Microsoft Entra-exemplaar.
- Als u een ISV bent, wilt u mogelijk gebruikers aanmelden met hun werk- en schoolaccounts in alle organisaties of in bepaalde organisaties (multitenant-app). Maar misschien wilt u ook dat gebruikers zich aanmelden met hun persoonlijke Microsoft-account.
De doelgroep opgeven in uw code/configuratie
Met MSAL in uw code kunt u de doelgroep opgeven met een van de volgende waarden:
- De opsomming van de Microsoft Entra-instantie
- De tenant-id, die het volgende kan zijn:
- Een GUID (de id van uw Microsoft Entra-exemplaar) voor toepassingen met één tenant
- Een domeinnaam die is gekoppeld aan uw Microsoft Entra-exemplaar (ook voor toepassingen met één tenant)
- Een van deze tijdelijke aanduidingen als tenant-id in plaats van de opsomming van de Microsoft Entra-instantie:
-
organizationsvoor een toepassing met meerdere tenants -
consumersom gebruikers alleen aan te melden met hun persoonlijke accounts -
commonom gebruikers aan te melden met hun werk- en schoolaccounts of persoonlijke Microsoft-accounts
-
MSAL genereert een zinvolle uitzondering als u zowel de Microsoft Entra-instantie als de tenant-id opgeeft.
Het is raadzaam om een doelgroep op te geven, omdat veel tenants en toepassingen die erin zijn geïmplementeerd, gastgebruikers hebben. Als uw toepassing is bedoeld voor externe gebruikers, vermijdt u de common en organization eindpunten. Als u geen doelgroep opgeeft, is uw app gericht op Microsoft Entra-id en persoonlijke Microsoft-accounts als doelgroep en gedraagt deze zich alsof common deze zijn opgegeven.
Effectieve doelgroep
De effectieve doelgroep voor uw toepassing is het minimum (als er een snijpunt is) van de doelgroep die u hebt ingesteld in uw app en de doelgroep die is opgegeven in de app-registratie. In feite kunt u met de ervaring App-registraties de doelgroep (de ondersteunde accounttypen) voor de app opgeven. Zie quickstart: Een toepassing registreren bij het Microsoft Identity Platform voor meer informatie.
Momenteel is de enige manier om een app alleen gebruikers met persoonlijke Microsoft-accounts te laten aanmelden, deze beide instellingen te configureren:
- Stel de doelgroep voor app-registratie in op
Work and school accounts and personal accounts. - Stel de doelgroep in uw code/configuratie in op
AadAuthorityAudience.PersonalMicrosoftAccount(ofTenantID="consumers").
Klant-ID
De client-id is de unieke toepassings-id (client) die is toegewezen aan uw app door Microsoft Entra ID toen de app werd geregistreerd. U vindt de toepassings-id (client) op de pagina Overzicht voor de toepassing in Entra ID>Enterprise-apps.
Omleidings-URI
De omleidings-URI is de URI waar de id-provider de beveiligingstokens weer naar stuurt.
Omleidings-URI voor openbare cliënt-apps
Als u een ontwikkelaar van een openbare cliënt-app bent die MSAL gebruikt:
U wilt
.WithDefaultRedirectUri()gebruiken in bureaubladtoepassingen (MSAL.NET 4.1+). De.WithDefaultRedirectUri()methode stelt de omleidings-URI-eigenschap van de openbare clienttoepassing in op de standaard aanbevolen omleidings-URI voor openbare clienttoepassingen.Platvorm Omleidings-URI Bureaublad-app (.NET Framework) https://login.microsoftonline.com/common/oauth2/nativeclientUWP (Universal Windows Platform) Waarde van WebAuthenticationBroker.GetCurrentApplicationCallbackUri(). Dit schakelt de eenmalige aanmelding (SSO) op de browser in door de waarde in te stellen op het resultaat van WebAuthenticationBroker.GetCurrentApplicationCallbackUri(). Dit moet u registreren.NET https://localhosthiermee kan de gebruiker de systeembrowser gebruiken voor interactieve verificatie, omdat .NET momenteel geen gebruikersinterface heeft voor de ingesloten webweergave.
U kunt de omleidings-URI overschrijven met de RedirectUri eigenschap (bv. als u brokers gebruikt). Hier volgen enkele voorbeelden van omleidings-URI's voor dat scenario:
RedirectUriOnAndroid="msauth-00001111-aaaa-2222-bbbb-3333cccc4444://com.microsoft.identity.client.sample";RedirectUriOnIos=$"msauth.{Bundle.ID}://auth";
Zie Brokered-verificatie in Android voor meer informatie over Android.
Wanneer u een app bouwt met MSAL Android, kunt u de
redirect_uriapp configureren tijdens de eerste stap voor app-registratie of deze later toevoegen.- De indeling van de omleidings-URI is:
msauth://<yourpackagename>/<base64urlencodedsignature> - Voorbeeld:
redirect_uri=msauth://com.azuresamples.myapp/6/aB1cD2eF3gH4iJ5kL6-mN7oP8qR=
- De indeling van de omleidings-URI is:
Raadpleeg de MSAL Android-configuratie voor meer informatie over de configuratie van de MSAL Android-app.
Configureer de omleidings-URI in app-registraties:
Omleidings-URI voor vertrouwelijke cliënt-apps
Voor web-apps is de omleidings-URI (of antwoord-URL) de URI die door Microsoft Entra-id wordt gebruikt om het token terug te sturen naar de toepassing. De URI kan de URL van de web-app/web-API zijn als de vertrouwelijke app een van deze beiden is. De omleidings-URI moet worden geregistreerd in de app-registratie. De registratie is vooral belangrijk wanneer u een app implementeert die u aanvankelijk lokaal hebt getest. Vervolgens moet u de antwoord-URL van de geïmplementeerde app toevoegen in het portaal voor toepassingsregistratie.
Voor daemon-apps hoeft u geen omleidings-URI op te geven.
Toepassingsreferenties
Voor vertrouwelijke clienttoepassingen is het effectief beheren van referenties essentieel. De referenties kunnen federatieve referenties zijn (aanbevolen), een certificaat of een clientgeheim.
Federatieve identiteitsbewijzen
Federatieve identiteitsreferenties zijn een type referentie waarmee workloads, zoals GitHub Actions, workloads die worden uitgevoerd op Kubernetes of workloads die worden uitgevoerd op rekenplatforms buiten Azure toegang hebben tot met Microsoft Entra beveiligde resources zonder dat u geheimen hoeft te beheren met behulp van workloadidentiteitsfederatie.
Certificaat
Met deze optie geeft u het certificaat voor de vertrouwelijke client-app op. Een certificaat, ook wel een openbare sleutel genoemd, is het aanbevolen referentietype omdat het als veiliger wordt beschouwd dan clientgeheimen.
Clientgeheim
Met deze optie geeft u het cliëntgeheim voor de vertrouwelijke cliënt-app op. Het clientgeheim (app-wachtwoord) wordt geleverd door de portal voor toepassingsregistratie of doorgegeven aan Microsoft Entra-id tijdens de app-registratie met PowerShell Microsoft Entra ID, PowerShell AzureRM of Azure CLI.
Logboekregistratie
De MSAL biedt ingebouwde ondersteuning voor de logboekregistratie om te helpen bij scenario's voor foutenopsporing en probleemoplossing bij verificatiefouten. De logboekregistratie in elke bibliotheek wordt behandeld in de volgende artikelen:
Volgende stappen
Meer informatie over het instantiëren van clienttoepassingen met behulp van MSAL.NET en het instantiëren van clienttoepassingen met behulp van MSAL.js.