Bereitstellen von Anwendungsidentitätsanmeldeinformationen, wenn kein Benutzer vorhanden ist
Wenn Sie als Entwickler Nichtbenutzeranwendungen erstellen, verfügen Sie nicht über einen Benutzer, den Sie zur Eingabe eines Benutzernamens und Kennworts oder einer mehrstufigen Authentifizierung (Multifactor Authentication, MFA) auffordern können. Sie müssen die Identität der Anwendung eigenständig angeben. In diesem Artikel wird erläutert, warum die beste Methode für Zero Trust-Clientanmeldeinformationen für Dienste (Nichtbenutzeranwendungen) in Azure verwaltete Identitäten für Azure-Ressourcen ist.
Probleme mit Dienstkonten
Die Verwendung eines „Dienstkontos“ (Das Erstellen eines Benutzerkontos und dessen Verwendung für einen Dienst) ist keine gute Lösung. Microsoft Entra ID verfügt nicht über ein Dienstkontokonzept. Wenn Administratoren Benutzerkonten für einen Dienst erstellen und dann Kennwörter für Entwickler freigeben, ist dies unsicher. Es kann nicht kennwortlos sein oder über eine MFA verfügen. Anstatt ein Benutzerkonto als Dienstkonto zu verwenden, empfiehlt es sich, eine der folgenden Clientanmeldeinformationen zu verwenden.
Clientanmeldeinformationsoptionen
Es gibt vier Arten von Clientanmeldeinformationen, die eine Anwendung identifizieren können.
- Geheimer Schlüssel
- Zertifikat
- Verwaltete Identitäten für Azure-Ressourcen
- Verbundanmeldeinformationen
Geheimer Schlüssel oder Zertifikat?
Geheime Schlüssel sind akzeptabel, wenn Sie über eine komplexe Infrastruktur zur Geheimnisverwaltung (wie z. B. Azure Key Vault) in Ihrem Unternehmen verfügen. Geheime Schlüssel in Szenarien, in denen der IT-Experte einen geheimen Schlüssel generiert und dann an einen Entwickler sendet, der ihn dann an einem unsicheren Speicherort wie einer Kalkulationstabelle speichert, bewirkt, dass geheime Schlüssel nicht ordnungsgemäß geschützt werden.
Zertifikatbasierte Clientanmeldeinformationen sind sicherer als geheime Schlüssel. Zertifikate werden besser verwaltet, da sie nicht das Geheimnis selbst sind. Das Geheimnis ist nicht Teil einer Übertragung. Wenn Sie einen geheimen Schlüssel verwenden, sendet Ihr Client den tatsächlichen Wert des geheimen Schlüssels an Microsoft Entra ID. Wenn Sie ein Zertifikat verwenden, verlässt der private Schlüssel des Zertifikats nie das Gerät. Selbst wenn jemand die Übertragung abfängt, decodiert und entschlüsselt, ist der geheime Schlüssel weiterhin sicher, da der Abfangende nicht über den privaten Schlüssel verfügt.
Bewährte Methode: Verwenden verwalteter Identitäten für Azure-Ressourcen
Wenn Sie Dienste (Nichtbenutzeranwendungen) in Azure entwickeln, stellen verwaltete Identitäten für Azure-Ressourcen eine automatisch verwaltete Identität in Microsoft Entra ID bereit. Die App kann sich bei jedem Dienst authentifizieren, der die Microsoft Entra-Authentifizierung unterstützt, ohne Anmeldeinformationen zu verwalten. Sie müssen keine geheimen Schlüssel verwalten. Sie müssen sich auch nicht mit der Möglichkeit auseinandersetzen, sie zu verlieren oder falsch zu handhaben. Geheime Schlüssel können nicht abgefangen werden, da sie nicht über das Netzwerk hinweg verschoben werden. Verwaltete Identitäten für Azure-Ressourcen sind die bewährten Methoden, wenn Sie Dienste in Azure erstellen.
Nächste Schritte
- Unterstützte Identitäts- und Kontotypen für Einzel- und Mehrinstanzen-Apps erläutern, wie Sie auswählen können, ob Ihre App nur Benutzer aus Ihrem Microsoft Entra-Mandanten, jedem Microsoft Entra-Mandanten oder Benutzer mit persönlichen Microsoft-Konten zulässt.
- Entwickeln einer Strategie für Anwendungsberechtigungen hilft Ihnen bei der Entscheidung über den Ansatz Ihrer Anwendungsberechtigungen für die Verwaltung von Anmeldeinformationen.
- Bereitstellen von Anmeldeinformationen für Anwendungsidentitäten ohne Benutzer erläutert, warum verwaltete Identitäten für Azure-Ressourcen die beste Methode für Clientanmeldeinformationen für Dienste (Nichtbenutzeranwendungen) in Azure ist.
- Bewährte Methoden zur Autorisierung helfen Ihnen, die besten Autorisierungs-, Berechtigungs- und Zustimmungsmodelle für Ihre Anwendungen zu implementieren.
- Verwenden Sie bewährte Methoden der Zero Trust-Identitäts- und Zugriffsverwaltungsentwicklung in Ihrem Anwendungsentwicklungslebenszyklus, um sichere Anwendungen zu erstellen.
- Erstellen von Apps mit einem Zero Trust-Ansatz für Identität bietet eine Übersicht über Berechtigungen und bewährte Methoden für den Zugriff.