Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Microsoft. Identity.Web ist eine Reihe von Bibliotheken, die das Hinzufügen von Authentifizierung und Autorisierung zu Anwendungen vereinfachen, die in die Microsoft Identity Platform integriert sind, einschließlich Microsoft Entra ID. Es unterstützt:
- .NET Aspire verteilte Anwendungen
- ASP.NET Core Webanwendungen und Web-APIs
- OWIN-Anwendungen auf .NET Framework
- .NET Daemonanwendungen und Hintergrunddienste
Unabhängig davon, ob Sie Web-Apps erstellen, die Benutzer anmelden, Web-APIs, die Token überprüfen, oder Hintergrunddienste, die geschützte APIs aufrufen, Microsoft. Identity.Web behandelt die Authentifizierungskomplexität für Sie.
Warum Microsoft Identity Web verwenden?
Microsoft. Identity.Web reduziert Codebausteine und bietet integrierte bewährte Methoden für gängige Identitätsszenarien. Zu den Schlüsselfunktionen gehören:
- Vereinfachte Authentifizierung – Minimale Konfiguration für die Anmeldung von Benutzern und Überprüfen von Token
-
Downstream-API-Aufrufe – Aufrufen Microsoft Graph, Azure SDKs oder eigener geschützter APIs mit automatischer Tokenverwaltung
- Tokenerwerb – Erwerben von Token im Auftrag von Benutzern oder Ihrer Anwendung
- Token-Cacheverwaltung – Unterstützung für verteilten Cache mit Redis, SQL Server, Cosmos DB und PostgreSQL
- Mehrere Anmeldedatentypen – Unterstützung für Zertifikate, verwaltete Identitäten und zertifikat-lose Authentifizierung
- Automatische Autorisierungsheader – Die Authentifizierung wird beim Aufrufen von APIs transparent behandelt.
Eine Übersicht über alle verfügbaren Pakete und deren Verwendung finden Sie unter NuGet-Pakete .
Aufrufen von APIs mit automatischer Authentifizierung
Sie können geschützte APIs aufrufen, ohne Token manuell zu verwalten. Microsoft. Identity.Web unterstützt die folgenden Integrationsmuster:
-
Microsoft Graph – Verwenden von
GraphServiceClientmit automatischer Tokenerfassung -
Azure SDKs – Verwenden Sie
TokenCredentialImplementierungen, die in Microsoft integriert sind. Identity.Web -
Eigene APIs – Verwenden
IDownstreamApioderIAuthorizationHeaderProviderfür nahtlose API-Aufrufe - Agentidentitäten – Anruf-APIs im Auftrag verwalteter Identitäten oder Dienstprinzipale mit automatischer Behandlung von Anmeldeinformationen
Authentifizierungsheader werden Ihren Anforderungen automatisch hinzugefügt, und Token werden transparent abgerufen und zwischengespeichert. Ausführliche Informationen finden Sie unter Aufrufen von downstream-APIs, Daemon-Anwendungen und dem Leitfaden für Agentidentitäten.
Konfigurationsansätze
Sie können Microsoft.Identity.Web durch Einstellungsdateien oder programmatisch konfigurieren. Beide Ansätze unterstützen alle Authentifizierungsszenarien.
Konfiguration nach Datei (empfohlen)
Konfigurieren der Authentifizierung in appsettings.json:
{
"AzureAd": {
"Instance": "https://login.microsoftonline.com/",
"TenantId": "your-tenant-id",
"ClientId": "your-client-id"
}
}
Von Bedeutung
Stellen Sie für Daemon-Apps und Konsolenanwendungen sicher, dass Ihre appsettings.json Datei in das Ausgabeverzeichnis kopiert wird. Legen Sie in Visual Studio die Eigenschaft Copy to Output Directory auf Copy if newer oder Copy always fest, oder fügen Sie Folgendes zu Ihrem .csproj hinzu:
<ItemGroup>
<None Update="appsettings.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
Konfiguration nach Code
Alternativ können Sie die Authentifizierung direkt in Ihrem Anwendungsstartcode konfigurieren:
builder.Services.AddAuthentication(OpenIdConnectDefaults.AuthenticationScheme)
.AddMicrosoftIdentityWebApp(options =>
{
options.Instance = "https://login.microsoftonline.com/";
options.TenantId = "your-tenant-id";
options.ClientId = "your-client-id";
});
Nächste Schritte
Wählen Sie das Szenario aus, das Ihrer Anwendung entspricht:
- Web-App – Benutzer anmelden – Hinzufügen der Authentifizierung zu Ihrer ASP.NET Core Webanwendung
- Web-API – Schützen Sie Ihre API – Sichern Sie Ihre ASP.NET Core Web-API mit Bearertoken
- Daemon-App – Aufrufen von APIs – Erstellen von Hintergrunddiensten, die geschützte APIs aufrufen