Quickstart: Aanmelding met Microsoft toevoegen aan een ASP.NET Core-web-app
Welkom. Dit is waarschijnlijk niet de pagina die u verwachtte te zien. Terwijl we aan een oplossing voor dit probleem werken, kunt u met deze koppeling naar het juiste artikel gaan:
Quickstart: Aanmelding met Microsoft toevoegen aan een ASP.NET Core-web-app
Onze excuses voor het ongemak en bedankt voor uw geduld tijdens onze inspanningen om dit probleem op te lossen.
In deze quickstart downloadt en voert u een codevoorbeeld uit dat laat zien hoe een ASP.NET Core-web-app gebruikers kan aanmelden bij elke Microsoft Entra-organisatie.
Stap 1: uw toepassing configureren in de Azure-portal
Het codevoorbeeld in deze quickstart werkt als volgt:
- Voer voor omleidings-URI en https://localhost:44321/https://localhost:44321/signin-oidc.
- Voer voor URL voor afmelden van frontkanaalhttps://localhost:44321/signout-oidc in.
Het autorisatie-eindpunt geeft aanvraag-id-tokens uit.
Uw toepassing is geconfigureerd met deze kenmerken.
Stap 2: Het ASP.NET Core-project downloaden
Voer het project uit.
Tip
Om fouten te voorkomen die worden veroorzaakt door padlengtebeperkingen in Windows, raden we u aan het archief te extraheren of de opslagplaats te klonen in een map dicht bij de hoofdmap van uw station.
Stap 3: Uw app is geconfigureerd en gereed om uit te voeren
We hebben uw project geconfigureerd met waarden van de eigenschappen van uw app en het is klaar om te worden uitgevoerd.
Notitie
Enter_the_Supported_Account_Info_Here
Meer informatie
Deze sectie bevat een overzicht van de code die vereist is voor het aanmelden van gebruikers. Dit overzicht kan handig zijn om te begrijpen hoe de code werkt, wat de belangrijkste argumenten zijn en hoe u aanmelding toevoegt aan een bestaande ASP.NET Core-toepassing.
Hoe het voorbeeld werkt
Opstartklasse
De Middleware Microsoft.AspNetCore.Authentication maakt gebruik van een Startup
klasse die wordt uitgevoerd wanneer het hostingproces wordt gestart:
public void ConfigureServices(IServiceCollection services)
{
services.AddAuthentication(OpenIdConnectDefaults.AuthenticationScheme)
.AddMicrosoftIdentityWebApp(Configuration.GetSection("AzureAd"));
services.AddControllersWithViews(options =>
{
var policy = new AuthorizationPolicyBuilder()
.RequireAuthenticatedUser()
.Build();
options.Filters.Add(new AuthorizeFilter(policy));
});
services.AddRazorPages()
.AddMicrosoftIdentityUI();
}
Met de methode AddAuthentication()
wordt de service geconfigureerd voor het toevoegen van op cookies gebaseerde verificatie. Deze verificatie wordt gebruikt in browserscenario's en om de uitdaging voor OpenID Connect in te stellen.
De regel die .AddMicrosoftIdentityWebApp
bevat, voegt het Microsoft Identity-platform toe aan uw toepassing. De toepassing wordt vervolgens geconfigureerd om gebruikers aan te melden op basis van de volgende informatie in de sectieAzureAD
van het configuratiebestand appsettings.json:
Sleutel appSettings.json | Beschrijving |
---|---|
ClientId |
Toepassings(client)-ID van de toepassing die is geregistreerd in de Azure-portal. |
Instance |
STS-eindpunt (Security Token Service) voor de gebruiker te verifiëren. Deze waarde is doorgaans https://login.microsoftonline.com/ , wat de openbare Azure-cloud aangeeft. |
TenantId |
De naam van de tenant of tenant-ID (een GUID) of common om gebruikers met werk- of schoolaccounts of persoonlijke Microsoft-accounts aan te melden. |
De methode Configure()
bevat twee belangrijke methoden, app.UseAuthentication()
en app.UseAuthorization()
, waarmee de benoemde functionaliteit kan worden ingeschakeld. In de Configure()
-methode moet u ook de routes van Microsoft Identity Web registreren met ten minste één aanroep naar endpoints.MapControllerRoute()
of endpoints.MapControllers()
:
app.UseAuthentication();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
endpoints.MapRazorPages();
});
Kenmerk voor het beveiligen van een controller of methoden
U kunt een controller- of controllermethode beveiligen met behulp van het [Authorize]
kenmerk. Dit kenmerk beperkt de toegang tot de controller of methoden door alleen geverifieerde gebruikers toe te staan. Een verificatievraag kan vervolgens worden gestart om toegang te krijgen tot de controller als de gebruiker niet is geverifieerd.
Help en ondersteuning
Als u hulp nodig hebt, een probleem wilt melden of meer informatie wilt over uw ondersteuningsopties, raadpleegt u Hulp en ondersteuning voor ontwikkelaars.
Volgende stappen
De GitHub-opslagplaats die deze ASP.NET Core-handleiding bevat, bevatten instructies en meer codevoorbeelden die laten zien hoe u het volgende kunt doen:
- Verificatie toevoegen aan een nieuwe ASP.NET Core Web-toepassing.
- Microsoft Graph, andere Microsoft-API's of uw eigen web-API's aanroepen.
- Autorisatie toevoegen.
- Gebruikers aanmelden bij nationale clouds of met sociale identiteiten.