Migration von Zugriffsrichtlinien zu Azure RBAC

Azure Key Vault bietet zwei Zugriffssteuerungsmodelle: Azure rollenbasierte Zugriffssteuerung (Azure RBAC) und ein Zugriffsrichtlinienmodell. Azure RBAC ist das Standard- und empfohlene Zugriffssteuerungsmodell für Azure Key Vault. Ab API Version 2026-02-01 ist Azure RBAC das Standardzugriffssteuerungsmodell für neue Tresore. Einen Vergleich der beiden Autorisierungsmethoden finden Sie unter Azure rollenbasierte Zugriffssteuerung (Azure RBAC) im Vergleich zu Zugriffsrichtlinien.

Informationen zum Vorbereiten Ihrer vorhandenen Bereitstellungen auf diese Änderung finden Sie unter Vorbereitung auf Key Vault API Version 2026-02-01 und höher.

Dieser Artikel enthält die Informationen, die zum Migrieren eines Key Vault von einem Zugriffsrichtlinienmodell zu einem Azure RBAC-Modell erforderlich sind.

Zugriffsrichtlinien für Azure Rollenzuordnung

Azure RBAC verfügt über mehrere Azure integrierten Rollen, die Sie Benutzern, Gruppen, Dienstprinzipalen und verwalteten Identitäten zuweisen können. Wenn die integrierten Rollen nicht den spezifischen Anforderungen Ihrer Organisation entsprechen, können Sie eigene Azure benutzerdefinierte Rollen erstellen.

Key Vault integrierte Rollen für Schlüssel, Zertifikate und geheime Zugriffsverwaltung:

  • Key Vault-Administrator
  • Key Vault-Leser
  • Key Vault Bereinigungsoperator
  • Key Vault Zertifikate-Beauftragter
  • Key Vault Zertifikatbenutzer
  • Krypto-Beauftragte/r für den Schlüsselspeicher
  • Key Vault Crypto-Nutzer
  • Key Vault Kryptodienst-Verschlüsselungsbenutzer
  • Kryptografiedienstrelease für Schlüsseltresore
  • Beauftragter für Key Vault-Geheimnisse
  • Key Vault Geheimer Benutzer

Weitere Informationen zu vorhandenen integrierten Rollen finden Sie unter Azure integrierte Rollen

Key Vault-Zugriffsrichtlinien können mit einzeln ausgewählten Berechtigungen oder über vordefinierte Berechtigungsvorlagen zugewiesen werden.

Die folgenden vordefinierten Berechtigungsvorlagen für Zugriffsrichtlinien sind verfügbar:

  • Verwaltung von Schlüsseln, Geheimnissen und Zertifikaten
  • Verwaltung von Schlüsseln und Geheimnissen
  • Verwaltung von Geheimnissen und Zertifikaten
  • Schlüsselverwaltung
  • Verwaltung von Geheimnissen
  • Zertifikatverwaltung
  • SQL Server Connector
  • Azure Data Lake Storage oder Azure Storage
  • Azure Backup
  • Exchange Online Kundenschlüssel
  • SharePoint Online-Kundenschlüssel
  • Azure Information-BYOK

Zugriffsrichtlinienvorlagen für Azure Rollenzuordnung

Zugriffsrichtlinienvorlage Operationen (Operations) Azure-Rolle
Verwaltung von Schlüsseln, Geheimnissen und Zertifikaten Schlüssel: alle Vorgänge
Zertifikate: alle Vorgänge
Geheimnisse: alle Vorgänge
Key Vault-Administrator
Verwaltung von Schlüsseln und Geheimnissen Schlüssel: alle Vorgänge
Geheimnisse: alle Vorgänge
Key Vault-Kryptografiebeauftragter
Beauftragter für Key Vault-Geheimnisse
Verwaltung von Geheimnissen und Zertifikaten Zertifikate: alle Vorgänge
Geheimnisse: alle Vorgänge
Key Vault-Zertifikatbeauftragter
Beauftragter für Key Vault-Geheimnisse
Schlüsselverwaltung Schlüssel: alle Vorgänge Krypto-Beauftragte/r für den Schlüsselspeicher
Verwaltung von Geheimnissen Geheimnisse: alle Vorgänge Beauftragter für Key Vault-Geheimnisse
Zertifikatverwaltung Zertifikate: alle Vorgänge Key Vault Zertifikate-Beauftragter
SQL Server-Connector Schlüssel: GET-, LIST-, WRAP KEY-, UNWRAP KEY-Vorgänge Key Vault Kryptodienst-Verschlüsselungsbenutzer
Azure Data Lake Storage oder Azure Storage Schlüssel: GET-, LIST-, UNWRAP KEY-Vorgänge
Benutzerdefinierte Rolle erforderlich
Azure Backup Schlüssel: GET-, LIST-, BACKUP-Vorgänge
Geheimnisse: GET-, LIST-, BACKUP-Vorgänge

Benutzerdefinierte Rolle erforderlich
Exchange Online Kundenschlüssel Schlüssel: GET-, LIST-, WRAP KEY-, UNWRAP KEY-Vorgänge Key Vault Kryptodienst-Verschlüsselungsbenutzer
Exchange Online Customer Key Schlüssel: GET-, LIST-, WRAP KEY-, UNWRAP KEY-Vorgänge Key Vault Kryptodienst-Verschlüsselungsbenutzer
Azure Information BYOK Schlüssel: GET-, DECRYPT-, SIGN-Vorgänge
Benutzerdefinierte Rolle erforderlich

Zuordnen von Zuweisungsbereichen

Azure RBAC für Key Vault ermöglicht die Rollenzuweisung in folgenden Bereichen:

  • Verwaltungsgruppe
  • Subscription
  • Ressourcengruppe
  • Key Vault-Ressource
  • Einzelner Schlüssel, einzelnes Geheimnis, einzelnes Zertifikat

Zugriffsrichtlinien sind darauf beschränkt, Richtlinien nur auf der Ressourcenebene des Key Vaults zuzuweisen.

Es hat sich bewährt, ein Key Vault-Objekt pro Anwendung zu erstellen und den Zugriff auf der Key Vault-Ebene zu verwalten. In manchen Szenarios kann die Verwaltung des Zugriffs auf anderen Ebenen jedoch die Zugriffsverwaltung vereinfachen.

  • Infrastruktur, Sicherheitsadministratoren und Operatoren: Die Verwaltung einer Gruppe von Schlüsseltresoren auf Verwaltungsgruppen-, Abonnement- oder Ressourcengruppenebene mithilfe von Key Vault-Zugriffsrichtlinien erfordert die Pflege von Richtlinien für jeden einzelnen Schlüsseltresor. Azure RBAC ermöglicht das Erstellen einer Rollenzuweisung in Verwaltungsgruppen, Abonnements oder Ressourcengruppen. Diese Zuweisung gilt für alle neuen Key Vault-Objekte, die auf der gleichen Ebene erstellt werden. In diesem Szenario wird empfohlen, Privileged Identity Management mit Just-in-Time-Zugriff zu verwenden und dauerhaften Zugriff zu vermeiden.

  • Anwendungen: In einigen Szenarien muss eine Anwendung ein Geheimnis für eine andere Anwendung freigeben. Bei Verwendung von Key Vault-Zugriffsrichtlinien müssen in diesem Fall getrennte Key Vault-Objekte erstellt werden, um zu verhindern, dass auf alle Geheimnisse zugegriffen werden kann. Azure RBAC ermöglicht das Zuweisen von Rollen mit Geltungsbereich für ein einzelnes Geheimnis, anstatt einen einzigen Schlüsseltresor zu verwenden.

Vorgehensweise zum Migrieren

Führen Sie die folgenden Schritte aus, um Ihre Azure Key Vault-Zugriffskonfiguration von Zugriffsrichtlinien zu Azure RBAC zu migrieren.

  • Vorbereiten: Stellen Sie sicher, dass Sie über die richtigen Berechtigungen und einen Bestand Ihrer Anwendungen verfügen.
  • Inventar: Dokumentieren Sie alle vorhandenen Zugriffsrichtlinien und -berechtigungen.
  • Azure RBAC-Rollen erstellen: Weisen Sie jedem Sicherheitsprinzipal geeignete Azure RBAC-Rollen zu.
  • Enable Azure RBAC: Stellen Sie Key Vault auf das Azure RBAC-Zugriffssteuerungsmodell um.
  • Validieren: Testen Sie den Zugriff, um sicherzustellen, dass alle Anwendungen und Benutzer den entsprechenden Zugriff behalten.
  • Überwachen: Einrichten der Überwachung und Benachrichtigung für Zugriffsprobleme.

Voraussetzungen

Stellen Sie vor dem Starten der Migration folgendes sicher:

  1. Erforderliche Berechtigungen: Sie müssen über die folgenden Berechtigungen für den Key Vault verfügen:

    • Microsoft.Authorization/roleAssignments/write Berechtigung, die in den Rollen "Besitzer" und "Benutzerzugriffsadministrator" enthalten ist
    • Microsoft.KeyVault/vaults/write-Berechtigung, enthalten in der Rolle der Key Vault-Mitwirkenden

    Hinweis

    Klassische Abonnementadministratorrollen (Dienstadministrator und Co-Administrator) werden nicht unterstützt.

  2. Inventar von Anwendungen und Identitäten: Auflisten aller Anwendungen, Dienste und Benutzer, die auf den Schlüsseltresor zugreifen, und dokumentieren Sie alle aktuellen Zugriffsrichtlinien und die berechtigungen, die sie gewähren.

Aktuelle Zugriffsrichtlinien inventarisieren

Dokumentieren Sie alle vorhandenen Zugriffsrichtlinien, wobei Sie die Sicherheitsprinzipale (Benutzer, Gruppen, Dienstprinzipale) und ihre Berechtigungen notieren.

Verwenden Sie den Befehl Azure CLI az keyvault show, um die Zugriffsrichtlinien abzurufen:

# List all current access policies
az keyvault show --name <vault-name> --resource-group <resource-group> --query properties.accessPolicies

Gleichwertige Azure RBAC-Rollenzuweisungen erstellen

Erstellen Sie für jeden Sicherheitsprinzipal mit einer Zugriffsrichtlinie eine oder mehrere Azure RBAC-Rollenzuweisungen basierend auf der obigen Zuordnungstabelle.

Verwenden Sie den Befehl " az role assignment create ", um entsprechende Rollen zu erteilen:

# Example for Key Vault Administrator role:
az role assignment create --role "Key Vault Administrator" --assignee "<object-id-or-email>" --scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.KeyVault/vaults/<vault-name>"

# Example for Key Vault Secrets Officer:
az role assignment create --role "Key Vault Secrets Officer" --assignee "<object-id-or-email>" --scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.KeyVault/vaults/<vault-name>"

# Example for Key Vault Crypto Officer:
az role assignment create --role "Key Vault Crypto Officer" --assignee "<object-id-or-email>" --scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.KeyVault/vaults/<vault-name>"

# Example for Key Vault Certificates Officer:
az role assignment create --role "Key Vault Certificates Officer" --assignee "<object-id-or-email>" --scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.KeyVault/vaults/<vault-name>"

Aktivieren Azure RBAC

Nachdem Sie alle erforderlichen Rollenzuweisungen erstellt haben, wechseln Sie den Tresor auf das Azure RBAC-Berechtigungsmodell um.

Verwenden Sie den Befehl az keyvault update, um Azure RBAC zu aktivieren:

# Switch the vault to Azure RBAC
az keyvault update --name <vault-name> --resource-group <resource-group> --enable-rbac-authorization true

Überprüfen des Zugriffs

Testen Sie den Zugriff auf den Tresor, um sicherzustellen, dass alle Anwendungen und Benutzer weiterhin erforderliche Vorgänge ausführen können.

Testen Sie Ihren Zugriff mit den folgenden Befehlen:

# Try to list secrets to verify access
az keyvault secret list --vault-name <vault-name>

# Try to get a secret to verify access
az keyvault secret show --vault-name <vault-name> --name <secret-name>

Einrichten der Überwachung und Benachrichtigung

Richten Sie nach der Migration eine ordnungsgemäße Überwachung ein, um Zugriffsprobleme zu erkennen:

Verwenden Sie den Befehl "az monitor diagnostic-settings create ":

# Enable diagnostics logging for Key Vault
az monitor diagnostic-settings create --resource <vault-id> --name KeyVaultLogs --logs "[{\"category\":\"AuditEvent\",\"enabled\":true}]" --workspace <log-analytics-workspace-id>

Migrationsgovernance mit Azure Policy

Mithilfe des Azure Policy-Diensts können Sie Azure RBAC-Migration in Ihren Tresoren steuern. Sie können eine benutzerdefinierte Richtliniendefinition erstellen, um vorhandene Schlüsseltresor zu überwachen und alle neuen Schlüsseltresor zu erzwingen, um Azure RBAC zu verwenden.

Erstellen und Zuweisen der Richtliniendefinition für Key Vault Azure RBAC

  1. Navigieren zur Richtlinienressource
  2. Wählen Sie Assignments unter Authoring auf der linken Seite der Azure-Policy-Seite aus.
  3. Wählen Sie oben auf der Seite "Richtlinie zuweisen" aus.
  4. Geben Sie Folgendes ein:
    • Definieren des Gültigkeitsbereichs der Richtlinie durch Auswählen der Abonnement- und Ressourcengruppe
    • Wählen Sie die Richtliniendefinition aus: "[Vorschau]: Azure Key Vault sollte Azure RBAC"
    • Definieren Sie die gewünschte Auswirkung der Richtlinie (Audit, Ablehnung oder Deaktivierung)
  5. Abschließen der Aufgabe durch Überprüfung und Erstellung

Nach dem Zuweisen einer neuen Richtlinie kann die Überprüfung bis zu 24 Stunden dauern. Nachdem der Scan abgeschlossen wurde, können Sie die Complianceergebnisse im Azure Policy-Dashboard sehen.

Zugriffsrichtlinie zum Azure RBAC-Vergleichstool

Wichtig

Dieses Tool wird von Mitgliedern der Microsoft Community entwickelt und gepflegt, jedoch ohne formelle Unterstützung durch den Kundenservice. Dieses Tool wird OHNE jede Gewährleistung bereitgestellt.

PowerShell-Tool, um Key Vault Zugriffsrichtlinien mit zugewiesenen Azure RBAC-Rollen zu vergleichen, um die Access-Richtlinie zur Azure RBAC-Migration zu unterstützen. Das Tool beabsichtigt, bei der Migration vorhandener Key Vault zum Azure RBAC eine Sanity-Überprüfung bereitzustellen, um sicherzustellen, dass zugewiesene Rollen mit zugrunde liegenden Datenaktionen vorhandene Zugriffsrichtlinien abdecken.

Behandeln allgemeiner Probleme

  • Verzögerung der Rollenzuweisung: Rollenzuweisungen können mehrere Minuten dauern, bis sie verteilt werden. Implementieren Sie die Wiederholungslogik in Ihren Anwendungen.
  • Verlorene Rollenzuweisungen nach der Wiederherstellung: Rollenzuweisungen werden nicht beibehalten, wenn ein Tresor nach einem Softdelete wiederhergestellt wird. Sie müssen alle Rollenzuweisungen nach der Wiederherstellung neu erstellen.
  • Zugriff verweigert Fehler: Überprüfen Sie Folgendes:
    • Die richtigen Rollen werden im richtigen Bereich zugewiesen.
    • Der Dienstprinzipal oder die verwaltete Identität hat genau die erforderlichen Berechtigungen.
    • Netzwerkzugriffsregeln blockieren ihre Verbindung nicht
  • Skripts schlagen nach der Migration fehl: Aktualisieren Sie alle Skripts, die stattdessen Zugriffsrichtlinien für die Verwendung von Rollenzuweisungen verwendet haben.

Weitere Informationen