Alex - stock.adobe.com

Verwaltete Identität und Dienstprinzipal für Azure im Vergleich

Microsoft Entra ID (Azure Active Directory) bietet mit verwalteten Identitäten und Dienstprinzipalen sichere, flexible Möglichkeiten zur Authentifizierung in Azure-Umgebungen.

Microsoft Entra ID (ehemals Azure Active Directory) bietet starke Authentifizierungs- und Autorisierungsfunktionen. Verwaltete Identitäten und Dienstprinzipale tragen zur Sicherheit des Zugriffs auf Azure-Ressourcen bei, indem sie das Risiko der Offenlegung von Anmeldeinformationen begrenzen.

Verwaltete Identitäten vereinfachen die Gewährung des Zugriffs von Azure-Diensten auf andere Ressourcen, indem sie Identitäten automatisch verwalten. Im Gegensatz dazu bieten Dienstprinzipale eine detailliertere Kontrolle und sind für die Automatisierung von Aufgaben und die Integration externer Anwendungen in Azure-Ressourcen unerlässlich. Die Unterscheidung zwischen diesen beiden Methoden erhöht die Sicherheit und optimiert die Ressourcenverwaltung und die betriebliche Effizienz.

Beim Vergleich von verwalteten Identitäten und Dienstprinzipalen in Azure zeigen sich die folgenden wesentlichen Unterschiede:

  • Identitätszuweisung und -löschung
  • automatisierte und manuelle Verwaltung von Anmeldeinformationen im Vergleich
  • Offenlegung von Anmeldeinformationen und Risiken
  • Verwendung in Azure-nativen Anwendungen oder externen Anwendungen

Das Verständnis dieser Authentifizierungsmethoden ist für die Aufrechterhaltung einer sicheren und effizienten Cloud-Infrastruktur unerlässlich, unabhängig davon, ob Sie eine VM konfigurieren, die Zugriff auf ein Storage-Konto benötigt, oder Bereitstellungen mit Azure DevOps automatisieren.

Verwaltete Identitäten

Eine verwaltete Identität in Microsoft Entra ID ermöglicht es Azure-Diensten, sich bei anderen Azure-Ressourcen zu authentifizieren, ohne Anmeldeinformationen sicher verwalten zu müssen. Sie stellt automatisch eine Identität bereit, die Entra-ID-Token abrufen kann. Durch diesen Prozess sind fest codierte Anmeldeinformationen überflüssig, was die Sicherheit erhöht und die Authentifizierung und Autorisierung vereinfacht.

Für verwaltete Identitäten stehen zwei Optionen zur Verfügung:

  • vom System zugewiesene verwaltete Identität
  • benutzerzugewiesene verwaltete Identität

Was ist eine vom System zugewiesene verwaltete Identität?

Eine vom System zugewiesene verwaltete Identität wird automatisch mit einer Azure-Dienstinstanz erstellt, beispielsweise einer VM oder einer Web-App. Die Identität ist an diese Ressource gebunden, wodurch sie einfach zu verwalten, aber nicht gemeinsam nutzbar ist. Da die Identität beispielsweise denselben Lebenszyklus wie der Dienst hat, wird beim Löschen des Dienstes auch die Identität gelöscht.

Dieser Identitätstyp eignet sich am besten, wenn eine einzelne Ressource Zugriff auf andere Azure-Ressourcen benötigt und nur minimale Verwaltung erfordert.

Eine vom System zugewiesene verwaltete Identität hat die folgenden Attribute:

  • wird automatisch erstellt
  • Lebenszyklus der Identität ist an den Dienst gebunden
  • erfordert nur minimale Verwaltung
  • am besten für eine einzelne Ressource geeignet

Was ist eine benutzerzugewiesene verwaltete Identität?

Eine benutzerzugewiesene verwalteten Identität ist eine unabhängige Azure-Ressource, die einer oder mehreren Dienstinstanzen zugewiesen werden kann. Ein Benutzer erstellt die Identität manuell als eigenständige Ressource und verwaltet sie getrennt von allen Dienstinstanzen. Die Identität bleibt bestehen, bis sie explizit gelöscht wird.

Diese Ressource ist hilfreich, wenn mehrere Ressourcen dieselbe Identität verwenden. Sie ist auch von Vorteil, wenn Benutzer mehr Flexibilität und Kontrolle über die Lebenszyklusverwaltung der Identität benötigen.

Zusammenfassend lässt sich sagen, dass eine benutzerzugeordnete verwaltete Identität die folgenden Merkmale aufweist:

  • unabhängig erstellt
  • kann für mehrere Ressourcen gemeinsam genutzt werden
  • bessere Kontrolle über die Verwaltung
  • muss manuell gelöscht werden

Vorteile der Verwendung verwalteter Identitäten

Verwaltete Identitäten in Azure machen die manuelle Verwaltung von Anmeldeinformationen überflüssig, begrenzen das Risiko menschlicher Fehler und reduzieren die Gefahr von Datenlecks. Sie erhöhen die Sicherheit, indem sie den Identitätslebenszyklus automatisch verwalten und die Authentifizierung für Azure-Dienste vereinfachen. Beispielsweise kann eine verwaltete Identität eine VM sicher authentifizieren, um auf Azure Key Vault zuzugreifen, ohne Anmeldeinformationen in der Anwendung zu speichern oder einzubetten.

Benutzer können über die Azure-rollenbasierte Zugriffssteuerung (RBAC) Rollenzuweisungen erstellen, um die Berechtigungen einer Identität für den Zugriff auf Ressourcen zu definieren. Azure Monitor und Azure-Aktivitätsprotokolle helfen Ihnen dabei, die Identitätsnutzung und Zugriffsmuster zu verfolgen sowie Richtlinien für Compliance und Governance zu implementieren.

Dienstprinzipale

Ein Dienstprinzipal ist eine Sicherheitsidentität innerhalb von Microsoft Entra ID, die Anwendungen, gehosteten Diensten und automatisierten Tools den sicheren Zugriff auf Azure-Ressourcen ermöglicht. Er funktioniert ähnlich wie eine Benutzeridentität, repräsentiert jedoch eine Anwendung oder einen Dienst, die beziehungsweise der sich authentifizieren und für den Zugriff auf bestimmte Ressourcen autorisieren muss, anstatt eines menschlichen Benutzers.

Dienstprinzipale ermöglichen es Anwendungen, sich mit minimalen Berechtigungen anzumelden und Aufgaben auszuführen, wodurch ein sicherer Betrieb gewährleistet ist.

In Azure sind drei Haupttypen von Dienstprinzipalen verfügbar:

1. Anwendungsdienstprinzipal: Anwendungsdienstprinzipale werden erstellt, wenn eine Anwendung bei Microsoft Entra ID registriert wird. Sie repräsentieren die Anwendung über alle Bereitstellungen hinweg und ermöglichen ihr die Authentifizierung und den Zugriff auf Ressourcen in Azure oder Microsoft Entra ID.

2. Verwalteter Identitätsdienstprinzipal: Durch das Aktivieren einer verwalteten Identität in Azure wird ein verwalteter Identitätsdienstprinzipal erstellt. Dieser Prinzipaltyp vereinfacht die Anmeldeinformationsverwaltung, indem er eine Identität für die Anwendung bereitstellt, mit der sie eine Verbindung zu Ressourcen herstellen kann, die die Azure-Authentifizierung unterstützen.

3. Legacy-Dienstprinzipal: Diese Prinzipale sind ältere Methoden, die häufig die manuelle Verwaltung von Anmeldeinformationen wie Kennwörtern oder Zertifikaten erfordern. Unternehmen verwenden sie in der Regel in Umgebungen, in denen moderne Authentifizierungsmechanismen nicht realisierbar sind. Microsoft empfiehlt, Legacy-Dienstprinzipale nicht mehr zu nutzen.

So erstellen und verwalten Sie Dienstprinzipale

Verwenden Sie Azure CLI und PowerShell-Cmdlets, um eine neue Anwendung und den entsprechenden Dienstprinzipal in Microsoft Entra ID zu erstellen. Azure stellt automatisch verwaltete Identitätsdienstprinzipale bereit, wenn Benutzer die verwaltete Identität in Azure-Diensten aktivieren. Außerdem übernimmt Azure die gesamte Verwaltung. Ältere Dienstprinzipale erfordern eine manuelle Einrichtung und die Verwaltung von Anmeldeinformationen.

Dienstprinzipale verwenden Azure RBAC, um Zugriff und Berechtigungen zu definieren, wobei Rollen auf verschiedenen Ebenen zugewiesen werden können, zum Beispiel Abonnements oder Ressourcengruppen. Clients authentifizieren sich mithilfe von Geheimnissen oder Zertifikaten, die Benutzer sicher speichern und regelmäßig austauschen sollten, vorzugsweise in Azure Key Vault. Überwachen und prüfen Sie die Einhaltung von Vorschriften mit Azure Monitor und Azure-Aktivitätsprotokollen.

Vorteile der Verwendung von Dienstprinzipalen

Dienstprinzipale in Azure bieten wichtige Vorteile sowohl für die Sicherheit als auch für die Automatisierung. Sie bieten eine granulare Zugriffssteuerung, gewährleisten bestimmte Berechtigungen und minimieren Schäden im Falle einer Kompromittierung. Verschiedene Anwendungen oder Dienste haben unterschiedliche Identitäten und unterstützen die Isolierung, wodurch verhindert wird, dass eine Verletzung in einem Dienst Auswirkungen auf andere hat.

Dienstprinzipale ermöglichen auch Automatisierungs-Tools wie Azure DevOps, Jenkins und Terraform, Ressourcen in CI/CD-Pipelines ohne manuelles Eingreifen zu authentifizieren und zu verwalten. Diese Tools können auch dazu beitragen, skriptgesteuerte Vorgänge zu sichern und in Azure RBAC zu integrieren, was die Berechtigungsverwaltung und Aktualisierungen im Zuge der Weiterentwicklung von Anwendungen vereinfacht.

Unterschiede zwischen verwalteten Identitäten und Dienstprinzipalen

Das Verständnis der Unterschiede zwischen verwalteten Identitäten und Dienstprinzipalen ist entscheidend für die Auswahl der geeigneten Authentifizierungsmethode für Azure-Ressourcen. Beide ermöglichen Anwendungen und Diensten den sicheren Zugriff auf Azure-Ressourcen, weisen jedoch unterschiedliche Merkmale und Anwendungsfälle auf.

Verwaltete Identitäten vereinfachen die Verwaltung von Anmeldeinformationen, da Azure diese automatisch verarbeitet und rotiert. Dienstprinzipale erfordern die manuelle Verwaltung von Client-Geheimnissen oder Zertifikaten, die sicher gespeichert und rotiert werden müssen.

In Bezug auf Lebenszyklus und Umfang können Benutzer verwaltete Identitäten entweder als systemzugewiesen (für eine einzelne Ressource) oder als benutzerzugewiesen (für mehrere Ressourcen gemeinsam nutzbar) zuweisen. Gleichzeitig können Benutzer Dienstprinzipale unabhängig voneinander erstellen und löschen, was eine feinere Zugriffskontrolle ermöglicht.

Verwaltete Identitäten eignen sich für Azure-native Ressourcen, während Dienstprinzipale für externe Apps oder Dienste geeignet sind, die mit Azure interagieren müssen.

Aus Sicherheitsgründen erhöhen verwaltete Identitäten die Sicherheit, indem sie die Offenlegung von Anmeldeinformationen vermeiden und Azure die Rotation verwaltet. Im Gegensatz dazu erfordern Dienstprinzipale eine strenge Verwaltung von Anmeldeinformationen, um Risiken zu minimieren.

Wann sollte was verwendet werden?

Die Entscheidung, ob verwaltete Identitäten oder Dienstprinzipale verwendet werden sollen, hängt von mehreren Faktoren ab. Verwenden Sie verwaltete Identitäten, wenn eine Anwendung oder ein Dienst innerhalb von Azure ausgeführt wird. Azure kann die Anmeldeinformationsverwaltung automatisch übernehmen und minimiert das Risiko einer Offenlegung von Anmeldeinformationen. Verwaltete Identitäten vereinfachen außerdem den Authentifizierungsprozess und automatisieren die Identitätsverwaltung, was den Verwaltungsaufwand reduziert.

Dienstprinzipale eignen sich am besten, wenn die Anwendung oder der Dienst außerhalb von Azure ausgeführt wird. Es ist erforderlich, Aufgaben oder Skripte zu automatisieren, die mit Azure-Ressourcen interagieren oder eine detailliertere Kontrolle über Berechtigungen und Zugriffsebenen erfordern. Dienstprinzipale sind auch für die Integration mit externen Diensten oder Anwendungen von Drittanbietern erforderlich. Sie erfordern eine sichere Verwaltung von Anmeldeinformationen und eine kontinuierliche Verwaltung, bieten jedoch mehr Flexibilität für externe Anwendungen.

Beide Methoden unterstützen Azure RBAC für die Zugriffssteuerung, wobei Dienstprinzipale für die externe Verwendung besser geeignet sind. Verwaltete Identitäten vereinfachen die Compliance durch minimale Offenlegung von Anmeldeinformationen, während Dienstprinzipale strengere Richtlinien erfordern, um Vorschriften wie DSGVO oder HIPAA zu erfüllen.

Praxisnahe Szenarien

Ein Anwendungsbeispiel für verwaltete Identitäten ist, wenn Azure Functions aus Azure Queue Storage lesen und in Azure Cosmos DB schreiben muss. Benutzer aktivieren eine vom System zugewiesene verwaltete Identität für die Funktion und weisen die erforderlichen Rollen in Azure RBAC zu. Dies vereinfacht die Authentifizierung und macht die Verwaltung von Anmeldeinformationen überflüssig, da Azure die Sicherheit und die Rotation der Anmeldeinformationen übernimmt.

Stellen Sie sich für eine Dienstprinzipale eine DevOps-Pipeline in einem CI/CD-Tool eines Drittanbieters vor, die in Azure bereitgestellt wird. Benutzer können in Microsoft Entra ID eine Dienstprinzipale erstellen, Rollen wie Mitwirkender zuweisen und die Anmeldeinformationen sicher im CI/CD-Tool speichern. Mit dieser Konfiguration kann das Tool die Azure-Ressourcenverwaltung sicher authentifizieren und automatisieren.

Den Zugriff auf Azure-Ressourcen richtig absichern

Die Sicherung des Zugriffs auf Ressourcen im Cloud Computing ist von entscheidender Bedeutung. Microsoft Azure bietet zwei wichtige Authentifizierungsmethoden: verwaltete Identitäten und Dienstprinzipale. Verwaltete Identitäten eignen sich am besten für interne Azure-Ressourcen und bieten eine nahtlose, sichere Authentifizierung ohne Berechtigungsmanagement. Dienstprinzipale sind für externe Anwendungen oder Automatisierungsaufgaben erforderlich, die eine detaillierte Zugriffskontrolle erfordern.

Erfahren Sie mehr über Anwendungs- und Plattformsicherheit