Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Microsoft. Identity.Web är en uppsättning bibliotek som förenklar tillägg av autentisering och auktorisering för program som integreras med Microsofts identitetsplattform, inklusive Microsoft Entra ID. Den stöder:
- .NET Aspire distribuerade applikationer
- ASP.NET Core webbprogram och webb-API:er
- OWIN applikationer på .NET Framework
- .NET daemonprogram och bakgrundstjänster
Oavsett om du skapar webbappar som loggar in användare, webb-API:er som validerar token eller bakgrundstjänster som anropar skyddade API:er Microsoft. Identity.Web hanterar autentiseringskomplexiteten åt dig.
Varför ska jag använda Microsoft Identity Web?
Microsoft. Identity.Web minskar exempelkoden och ger inbyggda metodtips för vanliga identitetsscenarier. Exempel på viktiga funktioner:
- Förenklad autentisering – Minimal konfiguration för inloggning av användare och validering av token
-
Downstream API-anrop – Anropa Microsoft Graph, Azure-SDK:er eller dina egna skyddade API:er med automatisk tokenhantering
- Tokenförvärv – Hämta token åt användare eller ditt program
- Token cachehantering – Stöd för distribuerad cache med Redis, SQL Server, Cosmos DB och PostgreSQL
- Flera typer av autentiseringsuppgifter – Stöd för certifikat, hanterade identiteter och certifikatfri autentisering
- Automatiska auktoriseringshuvuden – Autentisering hanteras transparent när API:er anropas
Se NuGet-paket för en översikt över alla tillgängliga paket och när du ska använda dem.
Anropa API:ar med automatisk autentisering
Du kan anropa skyddade API:er utan att hantera token manuellt. Microsoft. Identity.Web stöder följande integrationsmönster:
-
Microsoft Graph – Använd
GraphServiceClientmed automatisk tokenanskaffning -
Azure-SDK:er – Använd
TokenCredentialimplementeringar som integreras med Microsoft. Identity.Web -
Dina egna API:er – Använd
IDownstreamApiellerIAuthorizationHeaderProviderför sömlösa API-anrop - Agentidentiteter – Anropa API:er för hanterade identiteter eller tjänstens huvudnamn med automatisk hantering av autentiseringsuppgifter
Autentiseringshuvuden läggs automatiskt till i dina begäranden och token hämtas och cachelagras transparent. Mer information finns i Anropa underordnade API:er, Daemon-program och guiden Agentidentiteter.
Konfigurationsmetoder
Du kan konfigurera Microsoft. Identity.Web via inställningsfiler eller programmatiskt. Båda metoderna stöder alla autentiseringsscenarier.
Konfiguration efter fil (rekommenderas)
Konfigurera autentisering i appsettings.json:
{
"AzureAd": {
"Instance": "https://login.microsoftonline.com/",
"TenantId": "your-tenant-id",
"ClientId": "your-client-id"
}
}
Viktigt!
För daemonappar och konsolprogram kontrollerar du att appsettings.json filen kopieras till utdatakatalogen. I Visual Studio anger du egenskapen Copy to Output Directory till Copy if newer eller Copy always eller lägger till följande i din .csproj:
<ItemGroup>
<None Update="appsettings.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
Konfiguration efter kod
Du kan också konfigurera autentisering direkt i programmets startkod:
builder.Services.AddAuthentication(OpenIdConnectDefaults.AuthenticationScheme)
.AddMicrosoftIdentityWebApp(options =>
{
options.Instance = "https://login.microsoftonline.com/";
options.TenantId = "your-tenant-id";
options.ClientId = "your-client-id";
});
Nästa steg
Välj det scenario som matchar ditt program:
- Web app – Logga in användare – Lägg till autentisering i din ASP.NET Core webbapp
- Web API – Skydda ditt API – Skydda ditt ASP.NET Core webb-API med ägartoken
- Daemon-app – Anropa API:er – Skapa bakgrundstjänster som anropar skyddade API:er