Quickstart: Gebruikers aanmelden en de Microsoft Graph API aanroepen vanuit een ASP.NET Core-web-app
In deze quickstart wordt een voorbeeld-ASP.NET Core-web-app gebruikt om u te laten zien hoe u gebruikers kunt aanmelden met behulp van de autorisatiecodestroom en de Microsoft Graph API kunt aanroepen. In het voorbeeld wordt Microsoft Authentication Library voor .NET en Microsoft Identity Web gebruikt om verificatie af te handelen.
Vereisten
- Een Azure-account met een actief abonnement. Als u nog geen account hebt, maakt u gratis een account.
- Een minimale vereiste van .NET 6.0 SDK
- Visual Studio 2022 of Visual Studio Code
De toepassings- en record-id's registreren
Als u de registratie wilt voltooien, geeft u de toepassing een naam op en geeft u de ondersteunde accounttypen op. Nadat de toepassing is geregistreerd, worden in het deelvenster Overzicht van de toepassing de id's weergegeven die nodig zijn in de broncode van de toepassing.
Meld u aan bij het Microsoft Entra-beheercentrum.
Als u toegang hebt tot meerdere tenants, gebruikt u het pictogram Instellingen in het bovenste menu om over te schakelen naar de tenant waarin u de toepassing wilt registreren in het menu Mappen en abonnementen.
Blader naar Identiteitstoepassingen>> App-registraties en selecteer Nieuwe registratie.
Voer een naam in voor de toepassing, zoals identity-client-web-app.
Bij Ondersteunde accounttypen selecteert u Enkel accounts in deze organisatieadreslijst. Selecteer de optie Help mij kiezen voor informatie over verschillende accounttypen.
Selecteer Registreren.
Het deelvenster Overzicht van de toepassing wordt weergegeven wanneer de registratie is voltooid. Noteer de map-id (tenant) en de toepassings-id (client) die moet worden gebruikt in de broncode van uw toepassing.
Notitie
De ondersteunde accounttypen kunnen worden gewijzigd door te verwijzen naar De accounts wijzigen die door een toepassing worden ondersteund.
Een omleidings-URI voor platform toevoegen
Voer de volgende stappen uit om uw app-type op te geven voor uw app-registratie:
- Selecteer Verificatie onder Beheren.
- Selecteer op de pagina Platformconfiguraties de optie Een platform toevoegen en selecteer vervolgens de optie Web.
- Voer voor de omleidings-URI's in
https://localhost:5001/signin-oidc
. - Voer onder afmeldings-URL voor front-channel de naam
https://localhost:5001/signout-callback-oidc
in voor afmelding. - Selecteer Configureren om uw wijzigingen op te slaan.
De voorbeeldtoepassing klonen of downloaden
Als u de voorbeeldtoepassing wilt verkrijgen, kunt u deze klonen vanuit GitHub of downloaden als een .zip-bestand .
Als u het voorbeeld wilt klonen, opent u een opdrachtprompt en navigeert u naar de locatie waar u het project wilt maken en voert u de volgende opdracht in:
git clone https://github.com/Azure-Samples/ms-identity-docs-code-dotnet.git
Download het .zip-bestand. Pak het uit naar een bestandspad waarbij de lengte van de naam minder dan 260 tekens is.
Een zelfondertekend certificaat maken en uploaden
Gebruik de volgende opdrachten om met behulp van uw terminal te navigeren om een zelfondertekend certificaat te maken in de projectmap.
cd ms-identity-docs-code-dotnet\web-app-aspnet\ dotnet dev-certs https -ep ./certificate.crt --trust
Ga terug naar het Microsoft Entra-beheercentrum en selecteer onder Beheren certificaten en geheimen>uploadcertificaat.
Selecteer het tabblad Certificaten (0) en selecteer vervolgens Certificaat uploaden.
Er wordt een deelvenster Certificaat uploaden weergegeven. Gebruik het pictogram om naar het certificaatbestand te gaan dat u in de vorige stap hebt gemaakt en selecteer Openen.
Voer een beschrijving in voor het certificaat, bijvoorbeeld Certificaat voor aspnet-web-app en selecteer Toevoegen.
Noteer de vingerafdrukwaarde voor gebruik in de volgende stap.
Het project configureren
Open in uw IDE de projectmap ms-identity-docs-code-dotnet\web-app-aspnet met het voorbeeld.
Open appsettings.json en vervang de bestandsinhoud door het volgende codefragment;
{ "AzureAd": { "Instance": "https://login.microsoftonline.com/", "TenantId": "Enter the tenant ID obtained from the Microsoft Entra admin center", "ClientId": "Enter the client ID obtained from the Microsoft Entra admin center", "ClientCertificates": [ { "SourceType": "StoreWithThumbprint", "CertificateStorePath": "CurrentUser/My", "CertificateThumbprint": "Enter the certificate thumbprint obtained the Microsoft Entra admin center" } ], "CallbackPath": "/signin-oidc" }, "DownstreamApi": { "BaseUrl": "https://graph.microsoft.com/v1.0/", "RelativePath": "me", "Scopes": [ "user.read" ] }, "Logging": { "LogLevel": { "Default": "Information", "Microsoft.AspNetCore": "Warning" } }, "AllowedHosts": "*" }
TenantId
- De id van de tenant waar de toepassing is geregistreerd. Vervang de tekst tussen aanhalingstekens door deDirectory (tenant) ID
tekst die eerder is vastgelegd op de overzichtspagina van de geregistreerde toepassing.ClientId
- De id van de toepassing, ook wel de client genoemd. Vervang de tekst tussen aanhalingstekens door deApplication (client) ID
waarde die eerder is vastgelegd op de overzichtspagina van de geregistreerde toepassing.ClientCertificates
- Er wordt een zelfondertekend certificaat gebruikt voor verificatie in de toepassing. Vervang de tekst van deCertificateThumbprint
tekst door de vingerafdruk van het certificaat dat eerder is vastgelegd.
Voer de toepassing uit en meld u aan
Gebruik de terminal in uw projectmap om de volgende opdracht in te voeren;
dotnet run
Kopieer de
https
URL die in de terminal wordt weergegeven,https://localhost:5001
bijvoorbeeld en plak deze in een browser. U wordt aangeraden een privé- of incognitobrowsersessie te gebruiken.Volg de stappen en voer de benodigde gegevens in om u aan te melden met uw Microsoft-account. U wordt gevraagd een e-mailadres op te geven, zodat een eenmalige wachtwoordcode naar u kan worden verzonden. Voer de code in wanneer u hierom wordt gevraagd.
De toepassing vraagt toestemming om toegang te behouden tot gegevens die u toegang hebt gegeven tot gegevens en om u aan te melden en uw profiel te lezen. Selecteer Accepteren.
De volgende schermopname wordt weergegeven, waarmee wordt aangegeven dat u zich hebt aangemeld bij de toepassing en uw profielgegevens hebt geopend vanuit de Microsoft Graph API.
Afmelden bij de toepassing
- Zoek de koppeling Afmelden in de rechterbovenhoek van de pagina en selecteer deze.
- U wordt gevraagd een account te kiezen om u af te melden. Selecteer het account dat u hebt gebruikt om u aan te melden.
- Er verschijnt een bericht dat aangeeft dat u bent afgemeld. U kunt nu het browservenster sluiten.