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.
Apps können die Azure Identity-Bibliothek verwenden, um sich bei Microsoft Entra-ID zu authentifizieren, wodurch die Apps auf Azure-Dienste und -Ressourcen zugreifen können. Diese Authentifizierungsanforderung gilt, ob die App in Azure bereitgestellt, lokal gehostet oder lokal auf einer Entwicklerarbeitsstation ausgeführt wird. In den folgenden Abschnitten werden die empfohlenen Ansätze zum Authentifizieren einer App bei Microsoft Entra-ID in verschiedenen Umgebungen beschrieben, wenn Sie die Azure SDK-Clientbibliotheken verwenden.
Empfohlener Ansatz für die App-Authentifizierung
Tokenbasierte Authentifizierung über Microsoft Entra ID ist der empfohlene Ansatz für die Authentifizierung von Apps für Azure, anstatt Verbindungszeichenfolgen oder schlüsselbasierte Optionen zu verwenden. Die Azure Identity-Bibliothek stellt Klassen bereit, die die tokenbasierte Authentifizierung unterstützen und Apps die Authentifizierung bei Azure-Ressourcen ermöglichen, unabhängig davon, ob die App lokal, auf Azure oder auf einem lokalen Server ausgeführt wird.
Vorteile der tokenbasierten Authentifizierung
Die tokenbasierte Authentifizierung bietet die folgenden Vorteile gegenüber Verbindungszeichenfolgen:
- Die tokenbasierte Authentifizierung stellt sicher, dass nur die spezifischen Apps, die für den Zugriff auf die Azure-Ressource vorgesehen sind, dies tun können, während eine beliebige App mit einer Verbindungszeichenfolge eine Verbindung mit einer Azure-Ressource herstellen kann.
- Mithilfe der tokenbasierten Authentifizierung können Sie den Azure-Ressourcenzugriff auf nur die spezifischen Berechtigungen beschränken, die von der App benötigt werden. Dies folgt dem Prinzip des geringsten Privilegs. Im Gegensatz dazu gewährt eine Verbindungszeichenfolge vollständige Rechte für die Azure-Ressource.
- Wenn Sie eine verwaltete Identität für die tokenbasierte Authentifizierung verwenden, verarbeitet Azure Administrative Funktionen für Sie, sodass Sie sich keine Gedanken über Aufgaben wie das Sichern oder Drehen von geheimen Schlüsseln machen müssen. Dadurch ist die Anwendung sicherer, da es keine Verbindungszeichenfolge oder kein Anwendungsgeheimnis gibt, die bzw. das kompromittiert werden kann.
- Die Azure Identity-Bibliothek erwirbt und verwaltet Microsoft Entra-Token für Sie.
Die Verwendung von Verbindungszeichenfolgen sollte auf Szenarien beschränkt sein, in denen die tokenbasierte Authentifizierung keine Option ist, sowie auf anfängliche Proof-of-Concept-Apps oder Entwicklungsprototypen, die nicht auf Produktionsdaten oder vertrauliche Daten zugreifen. Verwenden Sie nach Möglichkeit die tokenbasierten Authentifizierungsklassen, die in der Azure Identity-Bibliothek verfügbar sind, um sich bei Azure-Ressourcen zu authentifizieren.
Authentifizierung in verschiedenen Umgebungen
Die spezifische Art der tokenbasierten Authentifizierung, die eine App für die Authentifizierung bei Azure-Ressourcen verwenden soll, hängt davon ab, wo die App ausgeführt wird. Das folgende Diagramm enthält Anleitungen für verschiedene Szenarien und Umgebungen:
Wenn eine App Folgendes tut:
- Gehostet in Azure: Die App sollte sich mit einer verwalteten Identität bei Azure-Ressourcen authentifizieren. Diese Option wird in Abschnitt Authentifizierung in Serverumgebungen ausführlicher erläutert.
- Lokal während der Entwicklung ausgeführt: Die App kann sich bei Azure mithilfe eines Anwendungsdienstprinzipals für die lokale Entwicklung oder mithilfe der Azure-Anmeldeinformationen des Entwicklers authentifizieren. Jede Option wird ausführlicher unter Authentifizierung während der lokalen Entwicklungerläutert.
- Lokal gehostet: Die App sollte sich bei Azure-Ressourcen mithilfe eines Anwendungsdienstprinzipals oder einer verwalteten Identität im Fall von Azure Arc authentifizieren. Lokale Workflows werden bei der Authentifizierung in Serverumgebungen ausführlicher erläutert.
Authentifizierung für von Azure gehostete Apps
Wenn Ihre App in Azure gehostet wird, kann sie verwaltete Identitäten verwenden, um sich bei Azure-Ressourcen zu authentifizieren, ohne anmeldeinformationen verwalten zu müssen. Es gibt zwei Arten von verwalteten Identitäten: vom Benutzer zugewiesen und vom System zugewiesen.
Verwenden einer benutzerseitig zugewiesenen verwalteten Identität
Eine vom Benutzer zugewiesene verwaltete Identität wird als eigenständige Azure-Ressource erstellt. Sie kann einer oder mehreren Azure-Ressourcen zugewiesen werden, sodass diese Ressourcen dieselbe Identität und Berechtigungen gemeinsam nutzen können. Um sich mit einer vom Benutzer zugewiesenen verwalteten Identität zu authentifizieren, erstellen Sie die Identität, weisen Sie sie Ihrer Azure-Ressource zu, und konfigurieren Sie ihre App dann so, dass diese Identität für die Authentifizierung verwendet wird, indem Sie ihre Client-ID, Ressourcen-ID oder Objekt-ID angeben.
Verwenden einer systemseitig zugewiesenen verwalteten Identität
Eine vom System zugewiesene verwaltete Identität wird direkt für eine Azure-Ressource aktiviert. Die Identität ist an den Lebenszyklus dieser Ressource gebunden und wird automatisch gelöscht, wenn die Ressource gelöscht wird. Um sich mit einer vom System zugewiesenen verwalteten Identität zu authentifizieren, aktivieren Sie die Identität in Ihrer Azure-Ressource, und konfigurieren Sie ihre App dann so, dass diese Identität für die Authentifizierung verwendet wird.
Authentifizierung während der lokalen Entwicklung
Während der lokalen Entwicklung können Sie sich mit Ihren Entwickleranmeldeinformationen oder einem Dienstprinzipal bei Azure-Ressourcen authentifizieren. Auf diese Weise können Sie die Authentifizierungslogik Ihrer App testen, ohne sie in Azure bereitzustellen.
Verwenden Sie Entwickleranmeldeinformationen
Sie können Ihre eigenen Azure-Anmeldeinformationen verwenden, um sich während der lokalen Entwicklung bei Azure-Ressourcen zu authentifizieren. Dies erfolgt in der Regel mit einem Entwicklungstool, z. B. Azure CLI oder Visual Studio, das Ihrer App die erforderlichen Token für den Zugriff auf Azure-Dienste bereitstellen kann. Diese Methode ist praktisch, sollte aber nur für Entwicklungszwecke verwendet werden.
Verwenden eines Dienstprinzipals
In einem Microsoft Entra Mandant wird ein Dienstprinzipal erstellt, das eine App repräsentiert und zur Authentifizierung bei Azure Ressourcen verwendet wird. Sie können Ihre App so konfigurieren, dass sie während der lokalen Entwicklung Anmeldeinformationen für das Dienstprinzipal verwendet. Diese Methode ist sicherer als die Verwendung von Entwickleranmeldeinformationen und ist näher an der Authentifizierung Ihrer App in der Produktion. Es ist jedoch immer noch weniger ideal als die Verwendung einer verwalteten Identität aufgrund der Notwendigkeit geheimer Schlüssel.
Authentifizierung für lokal gehostete Apps
Für Apps, die on-premises gehostet werden, können Sie ein Dienstprinzipal verwenden, um sich bei Azure Ressourcen zu authentifizieren. Dazu erstellen Sie ein Dienstprinzipal in Microsoft Entra ID, weisen ihm die erforderlichen Berechtigungen zu und konfigurieren Ihre App für die Verwendung der Anmeldeinformationen. Mit dieser Methode kann Ihre lokale App sicher auf Azure-Dienste zugreifen.