Quickstart: Gebruikers aanmelden en de Microsoft Graph API aanroepen vanuit een ASP.NET Core-web-app
In deze quickstart gebruikt u een voorbeeld ASP.NET Core-web-app om gebruikers aan te melden met behulp van de autorisatiecodestroom en de Microsoft Graph API aan te roepen. In het voorbeeld wordt gebruikgemaakt van Microsoft Authentication Library voor .NET en Microsoft Identity Web voor het afhandelen van verificatie.
Voorwaarden
- Een Azure-account met een actief abonnement. Als u nog geen account hebt, maak een gratis account aan.
- Een minimale vereiste voor .NET 8.0 SDK-
- 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 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 Identity>Applications>App-registratiesen selecteer Nieuwe registratie.
Voer een naam in voor de toepassing, zoals identity-client-web-app.
Voor ondersteunde accounttypenselecteert u Accounts in deze organisatiemap alleen. Voor informatie over verschillende accounttypen selecteert u de Help mij kiezen optie.
Selecteer registreren.
Het deelvenster Overzicht van de toepassing wordt weergegeven wanneer de registratie is voltooid. Noteer de Directory-id (tenant) en de -toepassings-id (client)-id die moet worden gebruikt in de broncode van uw toepassing.
Notitie
De Ondersteunde accounttypen kunnen worden gewijzigd door te verwijzen naar Wijzig de ondersteunde accounts door een toepassing.
Een redirect-URI voor het platform toevoegen
Voer de volgende stappen uit om uw app-type op te geven voor uw app-registratie:
- Ga onder naar Beheren en selecteer vervolgens Verificatie.
- Selecteer op pagina PlatformconfiguratiesEen platform toevoegenen selecteer vervolgens de optie Web.
- Voer voor de omleidings-URI's
https://localhost:5001/signin-oidc
in. - Voer onder afmeldings-URL van frontkanaal
https://localhost:5001/signout-callback-oidc
in om u af te melden. - 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
Als u uw toepassing wilt beveiligen, voegt u een certificaat toe aan uw toepassing. In deze sectie wordt beschreven hoe u een zelfondertekend certificaat maakt en uploadt naar de toepassingsregistratie in het Microsoft Entra-beheercentrum.
Notitie
Zelfondertekende certificaten mogen alleen worden gebruikt in ontwikkeling. In productie moet u een certificaat van een vertrouwde certificeringsinstantie gebruiken.
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 BeherenCertificaten & geheimen>Certificaat uploaden.
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 waarde van de Vingerafdruk 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
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
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 wordt weergegeven in de terminal, bijvoorbeeldhttps://localhost:5001
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 de toegang te behouden tot de gegevens waartoe u het toegang hebt gegeven, en om u in te loggen 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.