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.
Important
Ab dem 1. Mai 2025 ist Azure AD B2C nicht mehr für neue Kunden erhältlich. Weitere Informationen finden Sie in unseren HÄUFIG gestellten Fragen.
Je nach Typ der Anwendung, die Sie erstellen, und der zugrunde liegenden Plattform können Sie MSAL.NET, Microsoft Identity Web oder beides verwenden.
Microsoft Identity Web ist eine Reihe von ASP.NET Core Bibliotheken, die das Hinzufügen von Authentifizierungs- und Autorisierungsunterstützung zu Web-Apps und Web-APIs vereinfacht, die in die Microsoft Identity Platform integriert werden. Sie stellt eine einfache API-Komfortebene bereit, die ASP.NET Core, die Authentifizierungs-Middleware und die Microsoft Authentication Library (MSAL) (MSAL) für .NET miteinander verbindet.
Folgen Sie der folgenden Entscheidungsstruktur, um zu bestimmen, ob Ihr Szenario MSAL.NET, Microsoft Identity Web oder beides erfordert.
Wann verwende ich MSAL.NET
Sie erstellen eine Desktop- oder mobile App. Verwenden Sie MSAL.NET direkt, und beginnen Sie mit dem Abrufen von Token für Ihre öffentliche Clientanwendung. Einzelheiten dazu finden Sie unter:
- Abrufen von Token in einer Desktop-App und Verwenden von WAM
- Abrufen von Token in einer mobilen Anwendung
Verwenden Microsoft Identity Web
Sie erstellen eine vertrauliche Clientanwendung (Web-App, Web-API, Daemon/Dienst-App), die auf ASP.NET Core, ASP.NET OWIN oder .NET Framework/.NET Core ausgeführt wird. Sehen Sie, was Microsoft Identity Web zu bieten hat:
- Anmelden von Benutzern über Web-Apps in Microsoft Entra ID, Azure AD B2C und Microsoft Entra External ID Anwendungen
- Unterstützung Microsoft persönlichen Konten
- Unterstützen von Gastbenutzern
- Inkrementelle Zustimmung und bedingter Zugriff in Web-Apps
- Behandeln von SameSite
- Integration in "App-Dienste-Authentifizierung"
- Unterstützt PKCE für vertrauliche Clientanwendungen
- Bietet performante Tokencache-Serialisierer, einschließlich verteilter
- Schützen der Web-API (mit Microsoft Entra ID, Azure AD B2C oder Microsoft Entra External ID)
- Überprüft den Aussteller (einschließlich In-Multi-Mandanten-Apps, beliebiger Cloud)
- unterstützt Tokenentschlüsselungszertifikate in Web-APIs
- Überprüft die Bereichs- und App-Rolle in Web-APIs
- Generiert
WWW-authenticateHeader in APIs (CA, CAE) - Schützen von gRPC-Diensten und Azure-Funktionen
- Web-App/API-Aufruf nachgelagerter APIs (einschließlich Graph mit Ausnahme von B2C)
- Rufen Sie nachgeschaltete APIs auf, ohne die Authentifizierung und Token selbst verwalten zu müssen.
- Integriert in das Graph SDK und die Azure SDKs
- Beschreiben Sie die Clientanmeldeinformationen und Microsoft. Identity.Web ruft sie für Sie ab (z. B. Zertifikate aus Key Vault oder Workload-Identitätsverbund mit Azure Kubernetes Service (AKS) und verwalteten Identitäten)
- Unterstützt mehrere Authentifizierungsschemas in ASP.NET Core
- Unterstützt Proof of Possession-Protokoll
- Robust (unterstützt regionale Tokenakquisition und Routinghinweise für das Tokensicherungssystem)
Sie erstellen eine neue Anwendung
Verwenden Sie die Project Vorlagen und das msidentity-app-sync Tool. Wir haben Web-App-Vorlagen für Web MVC, Razor, Blazor Server, Blazorwasm gehostet und nicht gehostet. Alles für Microsoft Entra ID oder Azure AD B2C.
Wir verfügen über Web-API-Vorlagen für gRPC und Azure Functions.
Hier finden Sie Informationen zum Ausführen des Tools "msidentity-app-sync", das ein Befehlszeilentool ist, das Microsoft Identity Platform Anwendungen in einem Mandanten (Microsoft Entra ID oder Azure AD B2C) erstellt und den Konfigurationscode Ihrer ASP.NET Core Anwendungen aktualisiert. Das Tool kann auch verwendet werden, um Code aus einer vorhandenen Microsoft Entra Anwendung oder Azure AD B2C-Anwendung zu aktualisieren.
Es ist in NuGet verfügbar.
Sie fügen einer vorhandenen App eine Authentifizierung hinzu, oder ich migrieren von ADAL
Nehmen Sie einfach den Code, den Sie von Microsoft Identity Web benötigen, um Ihre App zu aktualisieren. Im Folgenden finden Sie ein Beispiel:
Wann verwenden Sie das Hybridmodell (MSAL.NET und Microsoft Identity Web)
Sie erstellen ein SDK für vertrauliche Clientanwendungen und möchten MSAL.NET APIs auf niedriger Ebene verwenden. In MSAL.NET wird standardmäßig ein Cache für In-Memory-Token bereitgestellt, bei Web-Apps oder Web-APIs sollte die Zwischenspeicherung jedoch anders verwaltet werden als für öffentliche Clientanwendungen (Desktop- oder mobile Apps), da sie ordnungsgemäß partitioniert werden muss. Es wird dringend empfohlen, einen Tokencache-Serialisierer zu nutzen, bei dem es sich um einen verteilten Cache (z. B. Redis, Cosmos oder SQL Server, verteilt im Speichercache) oder um einen ordnungsgemäß partitionierten Cache handelt.
Mithilfe von Tokencache-Serialisierern partitionieren Sie die Tokencaches abhängig vom verwendeten Cacheschlüssel, da der Cache zwischen dem Speicher und dem MSAL-Speicher ausgetauscht wird. Dieser Cacheschlüssel wird von MSAL.NET als Funktion des von Ihnen verwendeten Flusses berechnet.
Warum benötigen Sie Microsoft. Identity.Web.TokenCache?
Microsoft. Identity.Web.TokenCache stellt die Serialisierung des Tokencaches für Sie bereit. Details finden Sie unter Tokencache-Serialisierung .
Beispiele für die Verwendung von Tokencaches für Web-Apps und Web-APIs finden Sie im Lernprogramm ASP.NET Core Web App im Phase 2-2-Tokencache. Für Implementierungen sehen Sie sich den Ordner TokenCacheProviders im Microsoft an. Identity.Web-Repository.
Microsoft Identity Web hilft auch beim Laden von Zertifikaten.