Verhindern der Autorisierung mit gemeinsam verwendeten Schlüsseln für ein Azure Storage-Konto

Jede sichere Anforderung an ein Azure Storage-Konto muss autorisiert werden. Standardmäßig können Anfragen entweder mit Microsoft Entra-Anmeldeinformationen oder mithilfe des Kontozugriffsschlüssels zur Autorisierung per Shared Key autorisiert werden. Von diesen beiden Arten der Autorisierung bietet Microsoft Entra ID mehr Sicherheit und Benutzerfreundlichkeit gegenüber einem gemeinsam verwendeten Schlüssel und wird von Microsoft empfohlen. Sie können für Clients die Verwendung von Microsoft Entra ID zur Autorisierung von Anforderungen erzwingen, indem Sie Anforderungen an das Speicherkonto unterbinden, die mit einem gemeinsam verwendeten Schlüssel autorisiert wurden.

Wenn Sie die Autorisierung mit gemeinsam verwendeten Schlüsseln für ein Speicherkonto nicht zulassen, lehnt Azure Storage alle nachfolgenden Anforderungen an dieses Konto ab, die mit den Kontozugriffsschlüsseln autorisiert sind. Nur gesicherte Anfragen, die mit Microsoft Entra ID autorisiert werden, sind erfolgreich. Weitere Informationen zur Verwendung von Microsoft Entra ID finden Sie unter Autorisieren des Zugriffs auf Daten in Azure Storage.

Die AllowSharedKeyAccess-Eigenschaft eines Speicherkontos ist standardmäßig nicht festgelegt und gibt erst dann einen Wert zurück, wenn Sie sie explizit festgelegt haben. Das Speicherkonto lässt Anforderungen zu, die mit einem gemeinsam verwendeten Schlüssel autorisiert wurden, wenn der Eigenschaftswert NULL oder TRUE ist.

In diesem Artikel wird beschrieben, wie Sie ein DRAG-Framework (Detection-Remediation-Audit-Governance) zur kontinuierlichen Verwaltung der Autorisierung mit gemeinsam genutztem Schlüssel für Ihre Speicherkonten verwenden können.

Voraussetzungen

Bevor Sie den Zugriff mit gemeinsam genutztem Schlüssel auf eins Ihrer Speicherkonten untersagen:

Verständnis der Auswirkungen der Deaktivierung des Shared Key auf SAS-Token

Wenn Sie den Zugriff auf den geteilten Schlüssel für das Speicherkonto ausschließen, verwaltet Azure Storage SAS-Token basierend auf dem Typ des SAS und dem Dienst, auf den die Anfrage abzielt. Die folgende Tabelle zeigt, wie jeder SAS-Typ autorisiert ist und wie Azure Storage dieses SAS handhabt, wenn die AllowSharedKeyAccess-Eigenschaft für das Speicherkonto falsch ist.

SAS-Typ Autorisierungstyp Verhalten, wenn AllowSharedKeyAccess auf falsch gesetzt ist
SAS für Benutzerdelegierung (nur für Blob Storage) Microsoft Entra ID Die Anforderung wird zugelassen. Microsoft empfiehlt, wenn möglich, ein Benutzerdelegierungs-SAS zu verwenden, um eine höhere Sicherheit zu gewährleisten.
Service SAS Gemeinsam verwendeter Schlüssel Die Anforderung wird für alle Azure Storage-Dienste verweigert.
Konto-SAS Gemeinsam verwendeter Schlüssel Die Anforderung wird für alle Azure Storage-Dienste verweigert.

Azure-Metriken und die Protokollierung in Azure Monitor unterscheiden nicht zwischen verschiedenen Typen von Shared Access Signatures. Der Filter SAS in Azure-Metrik-Explorer und das Feld SAS bei der Azure Storage-Protokollierung in Azure Monitor melden alle Anforderungen, die mit einem beliebigen SAS-Typ autorisiert wurden. Die verschiedenen Typen von Shared Access Signatures werden jedoch unterschiedlich autorisiert und verhalten sich unterschiedlich, wenn der Zugriff mit gemeinsam verwendeten Schlüsseln nicht zulässig ist:

  • Ein Service-SAS-Token oder ein Konto-SAS-Token ist mit Shared Key autorisiert und ist bei einer Anfrage an Blob Storage nicht erlaubt, wenn die AllowSharedKeyAccess-Eigenschaft auf false gesetzt ist.
  • Eine SAS für die Benutzerdelegierung ist mit Microsoft Entra ID autorisiert und für eine Anforderung an Blob Storage zulässig, wenn die Eigenschaft AllowSharedKeyAccess auf false gesetzt ist.

Wenn Sie den Datenverkehr zu Ihrem Speicherkonto auswerten, können Metriken und Protokolle, wie unter Ermitteln des von Clientanwendungen verwendeten Autorisierungstyps beschrieben, auch Anforderungen enthalten, die mit einer Benutzerdelegierungs-SAS gestellt wurden.

Weitere Informationen zu SAS (Shared Access Signatures) finden Sie unter Gewähren von eingeschränktem Zugriff auf Azure Storage-Ressourcen mithilfe von SAS (Shared Access Signature).

Berücksichtigen Sie die Kompatibilität mit anderen Azure-Tools und -Diensten

Einige Azure-Dienste verwenden die Autorisierung mit gemeinsam verwendeten Schlüsseln, um mit Azure Storage zu kommunizieren. Wenn Sie die Autorisierung des gemeinsamen Schlüssels für ein Speicherkonto nicht erlauben, können diese Dienste nicht auf die Daten in diesem Konto zugreifen, und Ihre Anwendungen könnten nicht mehr funktionieren.

Einige Azure-Tools bieten die Möglichkeit, die Microsoft Entra-Autorisierung für den Zugriff auf Azure Storage zu verwenden. In der folgenden Tabelle sind einige beliebte Azure-Tools aufgelistet, und es ist angegeben, ob sie Microsoft Entra ID für das Autorisieren von Anforderungen an Azure Storage verwenden.

Azure-Tool Microsoft Entra-Autorisierung für Azure Storage
Azure-Portal Unterstützt. Informationen zur Autorisierung mit Ihrem Microsoft Entra-Konto über das Azure-Portal finden Sie unter Auswählen der Autorisierung des Zugriffs auf Blobdaten im Azure-Portal.
AzCopy Unterstützt für Blob Storage. Weitere Informationen zur Autorisierung von AzCopy-Vorgängen finden Sie in der AzCopy-Dokumentation unter Auswählen, wie Sie die Autorisierungsanmeldeinformationen bereitstellen.
Azure Storage-Explorer Dieses Tool wird unterstützt für Blob Storage, Queue Storage, Table Storage und Azure Data Lake Storage. Der Microsoft Entra ID-Zugriff auf Dateispeicher wird nicht unterstützt. Stellen Sie sicher, dass Sie den richtigen Microsoft Entra-Mandanten auswählen. Weitere Informationen finden Sie unter Erste Schritte mit Storage-Explorer.
Azure PowerShell Unterstützt. Informationen zum Autorisieren von PowerShell-Befehlen für Blob- oder Warteschlangenvorgänge mit Microsoft Entra ID finden Sie unter Ausführen von PowerShell-Befehlen mit Microsoft Entra-Anmeldeinformationen für den Zugriff auf Blobdaten und Ausführen von PowerShell-Befehlen mit Microsoft Entra-Anmeldeinformationen für den Zugriff auf Warteschlangendaten.
Azure CLI Unterstützt. Informationen zum Autorisieren von Azure CLI-Befehlen mit Microsoft Entra ID für den Zugriff auf Blob- und Warteschlangendaten finden Sie unter Ausführen von Azure CLI-Befehlen mit Microsoft Entra-Anmeldeinformationen für den Zugriff auf Blob- oder Warteschlangendaten.
Azure IoT Hub Unterstützt. Weitere Informationen finden Sie unter IoT Hub-Unterstützung für virtuelle Netzwerke.
Azure Cloud Shell Azure Cloud Shell ist eine integrierte Shell im Azure-Portal. Azure Cloud Shell hostet Dateien für Persistenz in einer Azure-Dateifreigabe in einem Speicherkonto. Diese Dateien werden unzugänglich, wenn die Autorisierung des geteilten Schlüssels für dieses Speicherkonto nicht erlaubt wird. Weitere Informationen finden Sie unter Beibehalten von Dateien in Azure Cloud Shell.

Um Befehle in Azure Cloud Shell auszuführen, um Speicherkonten zu verwalten, für die der Zugriff auf den geteilten Schlüssel nicht erlaubt ist, stellen Sie zunächst sicher, dass Ihnen die notwendigen Berechtigungen für diese Konten über Azure RBAC erteilt wurden. Weitere Informationen finden Sie unter Was ist die rollenbasierte Zugriffssteuerung von Azure (Azure Role-Based Access Control, Azure RBAC)?

Untersagen der Autorisierung mit gemeinsam verwendeten Schlüsseln zur Verwendung des bedingten Microsoft Entra-Zugriffs

Wenn Sie ein Azure Storage-Konto mit Microsoft Entra-Richtlinien für bedingten Zugriff schützen möchten, müssen Sie für das Speicherkonto die Autorisierung mit gemeinsam verwendeten Schlüsseln untersagen.

Autorisieren des Zugriffs auf Dateidaten oder Übergang zu Azure Files-Workloads

Azure Storage unterstützt die Microsoft Entra-Autorisierung nur bei Anforderungen an Azure Files, Blob Storage, Queue Storage und Table Storage. Standardmäßig verwendet das Azure-Portal jedoch die Autorisierung durch gemeinsam genutzte Schlüssel für den Zugriff auf Azure-Dateifreigaben. Wenn du die Autorisierung des geteilten Schlüssels für ein Speicherkonto verweigerst, das nicht mit den richtigen RBAC-Zuweisungen konfiguriert ist, schlagen Anfragen an Azure Files fehl, und du kannst nicht auf Azure-Dateifreigaben im Azure-Portal zugreifen.

Um dies zu entschärfen, empfehlen wir einen dieser drei Ansätze:

  1. Befolgen Sie diese Schritte, um den Zugriff auf Dateidaten über Ihr Microsoft Entra-Konto zu autorisieren.
  2. Migrieren Sie alle Azure Files-Daten zu einem separaten Speicherkonto, bevor Sie den Zugriff auf ein Konto über gemeinsam genutzte Schlüssel verbieten, oder:
  3. Wenden Sie diese Einstellung nicht auf Speicherkonten an, die Azure Files-Workloads unterstützen.

Identifizieren von Speicherkonten, die den Zugriff mit gemeinsam genutztem Schlüssel zulassen

Es gibt zwei Möglichkeiten zum Identifizieren von Speicherkonten, die den Zugriff mit gemeinsam genutztem Schlüssel zulassen:

Überprüfen der Einstellung für den Zugriff mit gemeinsam verwendeten Schlüsseln für mehrere Konten

Wenn Sie die Einstellung für den Zugriff mit gemeinsam verwendeten Schlüsseln für mehrere Speicherkonten mit optimaler Leistung überprüfen möchten, können Sie den Azure Resource Graph-Explorer im Azure-Portal verwenden. Weitere Informationen zur Verwendung des Resource Graph-Explorers finden Sie unter Schnellstart: Ausführen Ihrer ersten Resource Graph-Abfrage mithilfe des Azure Resource Graph-Explorers.

Wenn Sie die folgende Abfrage im Resource Graph-Explorer ausführen, wird eine Liste der Speicherkonten zurückgegeben und für jedes Konto die Einstellung für den Zugriff mit gemeinsam verwendeten Schlüsseln angezeigt:

resources
| where type =~ 'Microsoft.Storage/storageAccounts'
| extend allowSharedKeyAccess = parse_json(properties).allowSharedKeyAccess
| project subscriptionId, resourceGroup, name, allowSharedKeyAccess

Konfigurieren von Azure Policy für den Zugriff mit gemeinsam genutztem Schlüssel im Überwachungsmodus

Azure Policy Speicherkonten sollten den Zugriff mit gemeinsam genutztem Schlüssel verhindern verhindert, dass Benutzer mit entsprechenden Berechtigungen neue oder vorhandene Speicherkonten so konfigurieren können, dass die Autorisierung mit gemeinsam genutztem Schlüssel zugelassen wird. Konfigurieren Sie diese Richtlinie im Überwachungsmodus, um Speicherkonten zu identifizieren, bei denen die Autorisierung mit gemeinsam genutztem Schlüssel zulässig ist. Nachdem Sie Anwendungen so geändert haben, dass sie Microsoft Entra anstelle eines gemeinsam genutzten Schlüssels für die Autorisierung verwenden, können Sie die Richtlinie aktualisieren, um das Zulassen des Zugriffs mit gemeinsam genutzten Schlüsseln zu verhindern.

Weitere Informationen zur integrierten Richtlinie finden Sie unter Speicherkonten sollten Zugriff mit gemeinsam genutztem Schlüssel verhindern und Liste der integrierten Richtliniendefinitionen.

Zuweisen der integrierten Richtlinie für einen Ressourcenbereich

Führen Sie die folgenden Schritte aus, um die integrierte Richtlinie für den entsprechenden Bereich im Azure-Portal zuzuweisen:

  1. Suchen Sie im Azure-Portal nach Richtlinie, um das Azure Policy-Dashboard anzuzeigen.

  2. Wählen Sie im Abschnitt Erstellen die Option Zuweisungen aus.

  3. Wählen Sie Richtlinie zuweisen aus.

  4. Geben Sie auf der Registerkarte Grundlagen der Seite Richtlinie zuweisen im Abschnitt Bereich den Bereich für die Richtlinienzuweisung an. Wählen Sie die Schaltfläche Mehr (...) aus, um das Abonnement und eine optionale Ressourcengruppe auszuwählen.

  5. Wählen Sie für das Feld Richtliniendefinition die Schaltfläche Mehr (...) aus, und geben Sie Zugriff mit gemeinsam genutztem Schlüssel in das Feld Suchen ein. Wählen Sie die Richtliniendefinition mit dem Namen Speicherkonten sollten den Zugriff mit gemeinsam genutztem Schlüssel verhindern aus.

    Screenshot, wie man die integrierte Richtlinie auswählt, um den Zugriff auf den geteilten Schlüssel für Ihre Speicherkonten zu verhindern.

  6. Klicken Sie auf Überprüfen + erstellen.

  7. Überprüfen Sie auf der Registerkarte Überprüfen + erstellen die Richtlinienzuweisung, und wählen Sie dann Erstellen aus, um die Richtliniendefinition dem angegebenen Bereich zuzuweisen.

Überwachen der Einhaltung der Richtlinie

Führen Sie die folgenden Schritte aus, um Ihre Speicherkonten auf die Einhaltung der „Zugriff mit gemeinsam genutztem Schlüssel“-Richtlinie zu überwachen:

  1. Wählen Sie im Azure Policy-Dashboard unter Erstellung die Option Zuweisungen aus.

  2. Suchen Sie die Richtlinienzuweisung, die Sie im vorherigen Abschnitt erstellt haben, und wählen Sie sie aus.

  3. Wählen Sie die Registerkarte Konformität anzeigen aus.

  4. Alle Speicherkonten im Bereich der Richtlinienzuweisung, die die Richtlinienanforderungen nicht erfüllen, werden im Compliancebericht angezeigt.

    Screenshot davon, wie man den Compliance-Bericht für die integrierte Shared Key Zugriffsrichtlinie ansieht.

Um weitere Informationen darüber zu erhalten, warum ein Speicherkonto nicht konform ist, wählen Sie unter Grund für Nichtkonformität die Option Details aus.

Ermitteln Sie die von Clientanwendungen verwendete Autorisierungsart

Um zu verstehen, wie sich das Fehlen der Autorisierung von Shared Key auf Client-Anwendungen auswirken könnte, aktivieren Sie Logging und Metriken für das Speicherkonto. Sie können dann Muster von Anfragen an Ihr Konto im Laufe der Zeit analysieren, um zu bestimmen, wie Anfragen autorisiert werden. Die Erkennung verwendet zwei unabhängige Werkzeuge: Azure Monitor-Metriken für aggregierte Anfragezahlen und Azure Monitor-Ressourcenprotokolle für Client-Details. Ressourcenprotokolle erfordern eine Diagnoseeinstellung im Speicherkonto.

Verwenden Sie Metriken, um zu ermitteln, wie viele Anforderungen, die mit einem gemeinsam verwendeten Schlüssel oder einer Shared Access Signature (SAS) autorisiert wurden, das Speicherkonto empfängt. Ermitteln Sie mithilfe der Protokolle, welche Clients diese Anforderungen senden.

Eine SAS kann entweder mit einem gemeinsam verwendeten Schlüssel oder mit Microsoft Entra ID autorisiert werden. Weitere Informationen zum Interpretieren von Anforderungen, die mit einer Shared Access Signature ausgeführt werden, finden Sie unter Grundlegendes zu den Auswirkungen der Aufhebung gemeinsam verwendeter Schlüssel auf SAS-Token.

Bestimmen der Anzahl und Häufigkeit von Anforderungen, die mit gemeinsam genutztem Schlüssel autorisiert wurden

Verwenden Sie den Azure-Metrik-Explorer im Azure-Portal, um die Autorisierung von Anforderungen an ein Speicherkonto nachzuverfolgen. Weitere Informationen zum Metrik-Explorer finden Sie unter Analysieren von Metriken mit dem Azure Monitor-Metrik-Explorer.

Gehen Sie wie folgt vor, um eine Metrik zur Nachverfolgung von Anforderungen mit einem gemeinsam verwendeten Schlüssel oder einer Shared Access Signature zu erstellen:

  1. Navigieren Sie zum Speicherkonto im Azure-Portal. Wählen Sie im Abschnitt Überwachung die Option Metriken aus.

  2. Das Kästchen „Neue Metrik“ sollte angezeigt werden:

    Screenshot des neuen Metrik-Dialogs zur Nachverfolgung von Shared-Key-Anfragen.

    Wenn dies nicht der Fall ist, wählen Sie Metrik hinzufügen aus.

  3. Geben Sie im Dialogfeld Metrik die folgenden Werte an:

    1. Behalten Sie im Feld Bereich den Namen des Speicherkontos bei.
    2. Legen Sie Metriknamespace auf Konto fest. Diese Metrik meldet alle Anfragen gegen das Speicherkonto.
    3. Legen Sie das Feld Metrik auf Transaktionen fest.
    4. Legen Sie das Feld Aggregation auf Summe fest.

    Die neue Metrik zeigt die Summe der Transaktionen gegen das Speicherkonto über einen bestimmten Zeitraum an. Die resultierende Metrik sieht wie folgt aus:

    Screenshot des Konfigurierens einer Metrik zum Summieren von Transaktionen, die mit einem gemeinsam genutzten Schlüssel oder einer SAS erfolgt sind.

  4. Wählen Sie als Nächstes die Schaltfläche Filter hinzufügen aus, um einen Filter für die Metrik für den Autorisierungstyp zu erstellen.

  5. Geben Sie im Dialogfeld Filter die folgenden Werte an:

    1. Legen Sie Eigenschaft auf Authentifizierung fest.
    2. Legen Sie das Feld Operator auf das Gleichheitszeichen (=) fest.
    3. Wählen Sie im Feld Werte die Optionen Kontoschlüssel und SAS aus.
  6. Wählen Sie rechts oben den gewünschten Zeitbereich für die Metrik aus. Sie können auch angeben, wie präzise die Aggregation von Anforderungen sein soll. Hierzu können Intervalle zwischen einer Minute und einem Monat angegeben werden. Legen Sie z. B. Zeitbereich auf 30 Tage und Zeitgranularität auf 1 Tag fest, um die Anforderungen anzuzeigen, die pro Tag in den letzten 30 Tagen aggregiert wurden.

Nachdem Sie die Metrik konfiguriert haben, erscheinen Anfragen an Ihr Speicherkonto im Diagramm. In der folgenden Abbildung sind Anforderungen aufgeführt, die mit einem gemeinsam verwendeten Schlüssel autorisiert oder mit einem SAS-Token durchgeführt wurden. Die Anfragen werden in den letzten 30 Tagen täglich aggregiert.

Screenshot der aggregierten Anfragen, die mit Shared Key oder SAS-Token über 30 Tage autorisiert wurden.

Sie können auch eine Warnungsregel konfigurieren, um benachrichtigt zu werden, wenn eine bestimmte Anzahl von Anforderungen an Ihr Speicherkonto gerichtet wird, die mit einem gemeinsam verwendeten Schlüssel autorisiert wurden. Weitere Informationen finden Sie unter Erstellen, Anzeigen und Verwalten von Metrikwarnungen mit Azure Monitor.

Analysieren von Protokollen zum Identifizieren von Clients, die Anforderungen mit gemeinsam verwendeten Schlüsseln oder SAS autorisieren

In Azure Storage-Protokollen werden Details zu Anforderungen für das Speicherkonto erfasst. Hierzu zählt auch die Information, wie eine Anforderung autorisiert wurde. Sie können die Protokolle analysieren, um zu ermitteln, welche Clients Anforderungen mit gemeinsam verwendeten Schlüsseln oder SAS-Token autorisieren.

Wenn Sie Anforderungen an Ihr Azure Storage-Konto protokollieren möchten, um deren Autorisierung zu untersuchen, können Sie die Azure Storage-Protokollierung in Azure Monitor verwenden. Weitere Informationen finden Sie unter Überwachen von Azure Storage.

Azure Storage Logging in Azure Monitor unterstützt Log-Abfragen zur Analyse von Logdaten. Um Logs abzufragen, verwenden Sie einen Azure Log Analytics-Arbeitsbereich. Weitere Informationen zu Protokollabfragen finden Sie unter Tutorial: Erste Schritte mit Log Analytics-Abfragen.

Erstellen einer Diagnoseeinstellung im Azure-Portal

Wenn Sie Azure Storage-Daten mit Azure Monitor protokollieren und mit Azure Log Analytics analysieren möchten, müssen Sie zunächst eine Diagnoseeinstellung erstellen, die angibt, welche Anforderungstypen und für welche Speicherdienste Daten protokolliert werden sollen. Nachdem Sie die Protokollierung für Ihr Speicherkonto konfiguriert haben, sind die Protokolle im Log Analytics-Arbeitsbereich verfügbar. Informationen zum Erstellen eines Arbeitsbereichs finden Sie unter Erstellen eines Log Analytics-Arbeitsbereichs im Azure-Portal.

Informationen zum Erstellen einer Diagnoseeinstellung im Azure-Portal finden Sie unter Erstellen von Diagnoseeinstellungen in Azure Monitor.

Eine Referenz der Felder, die in Azure Storage-Protokollen in Azure Monitor verfügbar sind, finden Sie unter Ressourcenprotokolle.

Abfrageprotokolle für Anforderungen, die mit einem Shared Key oder SAS ausgeführt wurden

Azure Storage-Protokolle in Azure Monitor enthalten die Art der Autorisierung, die bei einer Anforderung für ein Speicherkonto verwendet wurde. Zum Abrufen von Protokollen für Anforderungen, die in den letzten sieben Tagen durchgeführt und mit einem gemeinsam verwendeten Schlüssel oder einer SAS autorisiert wurden, öffnen Sie den Log Analytics-Arbeitsbereich. Fügen Sie dann die folgende Abfrage in eine neue Protokollabfrage ein, und führen Sie sie aus. Diese Abfrage zeigt die zehn IP-Adressen an, die am häufigsten Anfragen gesendet haben, die mit einem gemeinsamen Schlüssel oder SAS autorisiert waren.

StorageBlobLogs
| where AuthenticationType in ("AccountKey", "SAS") and TimeGenerated > ago(7d)
| summarize count() by CallerIpAddress, UserAgentHeader, AccountName
| top 10 by count_ desc

Sie können auch eine auf dieser Abfrage basierende Warnungsregel konfigurieren, um über Anforderungen informiert zu werden, die mit einem gemeinsam verwendeten Schlüssel oder einer SAS autorisiert wurden. Weitere Informationen finden Sie unter Erstellen, Anzeigen und Verwalten von Protokollwarnungen mithilfe von Azure Monitor.

Aufheben der Autorisierung mit gemeinsam verwendeten Schlüsseln

Nachdem Sie analysiert haben, wie Anforderungen an Ihr Speicherkonto autorisiert werden, können Sie Maßnahmen ergreifen, um den Zugriff mit gemeinsam verwendeten Schlüsseln zu verhindern. Zuerst müssen Sie jedoch alle Anwendungen, die eine Autorisierung mit gemeinsam verwendeten Schlüsseln nutzen, so aktualisieren, dass sie stattdessen Microsoft Entra ID verwenden. Sie können Protokolle und Metriken überwachen, wie in Ermitteln der von Clientanwendungen verwendeten Autorisierung beschrieben, um den Übergang nachzuverfolgen. Weitere Informationen zur Verwendung von Microsoft Entra ID in einem Speicherkonto finden Sie unter Autorisieren des Zugriffs auf die Daten in Azure Storage.

Wenn Sie sicher sind, dass Sie Anforderungen, die mit gemeinsam genutzten Schlüsseln autorisiert wurden, ablehnen können, können Sie die AllowSharedKeyAccess-Eigenschaft für das Speicherkonto auf FALSE festlegen.

Warnung

Wenn ein Client derzeit mit einem gemeinsam verwendeten Schlüssel auf Daten in Ihrem Speicherkonto zugreift, empfiehlt Microsoft, diese Clients zu Microsoft Entra ID zu migrieren, bevor Sie den Zugriff auf das Speicherkonto mit einem gemeinsam verwendeten Schlüssel unterbinden.

Berechtigungen zum Zulassen oder Ablehnen des Zugriffs mit gemeinsam verwendeten Schlüsseln

Zum Festlegen der Eigenschaft AllowSharedKeyAccess für das Speicherkonto muss ein Benutzer Berechtigungen zum Erstellen und Verwalten von Speicherkonten haben. Azure-RBAC-Rollen (Role-Based Access Control, rollenbasierte Zugriffssteuerung), die diese Berechtigungen bereitstellen, enthalten die Aktion Microsoft.Storage/storageAccounts/write oder Microsoft.Storage/storageAccounts/*. In diese Aktion sind folgende Rollen integriert:

Diese Rollen bieten keinen Zugriff auf Daten in einem Speicherkonto über Microsoft Entra ID. Sie enthalten jedoch die Aktion Microsoft.Storage/storageAccounts/listkeys/action, die Zugriff auf die Kontozugriffsschlüssel gewährt. Bei dieser Berechtigung kann ein Benutzer mithilfe der Kontozugriffsschlüssel auf alle Daten in einem Speicherkonto zuzugreifen.

Rollenzuweisungen müssen auf die Ebene des Speicherkontos oder höher eingeschränkt werden, damit ein Benutzer den Zugriff mit gemeinsam verwendeten Schlüsseln für das Speicherkonto zulassen oder ablehnen darf. Weitere Informationen zum Rollenbereich finden Sie unter Grundlegendes zum Bereich für Azure RBAC.

Beschränken Sie die Zuweisung dieser Rollen unbedingt auf diejenigen Benutzer, denen es möglich sein muss, ein Speicherkonto zu erstellen oder dessen Eigenschaften zu aktualisieren. Verwenden Sie das Prinzip der geringsten Rechte, um sicherzustellen, dass Benutzer die geringsten Berechtigungen haben, die sie zum Ausführen ihrer Aufgaben benötigen. Weitere Informationen zum Verwalten des Zugriffs mit Azure RBAC finden Sie unter Bewährte Methoden für Azure RBAC.

Hinweis

Die klassischen Abonnementadministratorrollen Dienstadministrator und Co-Administrator beinhalten das Äquivalent der Azure Resource Manager-Rolle Besitzer. Weil die Rolle Besitzer alle Aktionen einschließt, kann ein Benutzer mit einer dieser administrativen Rollen auch Speicherkonten erstellen und verwalten. Weitere Informationen finden Sie unter Azure-Rollen, Microsoft Entra-Rollen und Administratorrollen für klassische Abonnements.

Deaktivieren der Autorisierung mit gemeinsam verwendetem Schlüssel

Indem Sie ein Konto mit den erforderlichen Berechtigungen verwenden, deaktivieren Sie die Autorisierung des geteilten Schlüssels im Azure-Portal, mit PowerShell oder über die Azure CLI.

Befolgen Sie diese Schritte, um die Autorisierung mit gemeinsam verwendeten Schlüsseln für ein Speicherkonto im Azure-Portal zu verweigern:

  1. Navigieren Sie zum Speicherkonto im Azure-Portal.

  2. Suchen Sie unter Einstellungen die Einstellung Konfiguration.

  3. Legen Sie Zugriff auf Speicherkontoschlüssel erlauben auf Deaktiviert fest.

    Screenshot davon, wie man den Zugriff auf den geteilten Schlüssel für ein Speicherkonto verweigert.

Nachdem Sie die Autorisierung des gemeinsamen Schlüssels nicht erlaubt haben, schlägt eine Anfrage an das Speicherkonto über die Autorisierung des gemeinsamen Schlüssels mit Fehlercode 403 (Verboten) fehl. Azure Storage liefert eine Fehlermeldung, die darauf hindeutet, dass eine schlüsselbasierte Autorisierung auf dem Speicherkonto nicht erlaubt ist.

Die Eigenschaft AllowSharedKeyAccess wird nur bei Speicherkonten unterstützt, die das Azure Resource Manager-Bereitstellungsmodell verwenden. Informationen dazu, welche Speicherkonten das Azure Resource Manager-Bereitstellungsmodell verwenden, finden Sie unter Typen von Speicherkonten.

Um zu bestätigen, dass die Autorisierung des geteilten Schlüssels deaktiviert ist, siehe Überprüfen, dass der Zugriff auf den gemeinsamen Schlüssel nicht erlaubt ist.

Überprüfen, ob der Zugriff mit gemeinsam verwendeten Schlüsseln verhindert wird

Die Eigenschaft allowSharedKeyAccess gibt nur falsch zurück, nachdem du die Autorisierung des geteilten Schlüssels für das Speicherkonto deaktiviert hast. Um zu überprüfen, dass die Autorisierung des geteilten Schlüssels nicht mehr erlaubt ist, fragen Sie die Einstellungen des Azure Storage-Kontos mit folgendem Befehl ab. Ersetzen Sie die Platzhalterwerte in den Klammern durch Ihre eigenen Werte.

az storage account show \
    --name <storage-account-name> \
    --resource-group <resource-group-name> \
    --query "allowSharedKeyAccess"

Dieser Aufruf gibt false zurück, wenn die Autorisierung mit Shared Key für das Speicherkonto nicht länger zulässig ist.

Hinweis

Anonyme Anfragen sind nicht autorisiert und werden fortgesetzt, wenn du das Speicherkonto und den Container für anonymen Lesezugriff konfiguriert hast. Weitere Informationen finden Sie unter Konfigurieren des anonymen Lesezugriffs für Container und Blobs.

Azure-Policy auf Konformität überwachen

Nachdem Sie den Zugriff mit gemeinsam genutztem Schlüssel auf die gewünschten Speicherkonten untersagt haben, überwachen Sie die zuvor erstellte Richtlinie auf fortlaufende Konformität. Ergreifen Sie basierend auf den Überwachungsergebnissen nach Bedarf die geeigneten Maßnahmen, einschließlich des Änderns des Geltungsbereichs der Richtlinie, des Untersagens des Zugriffs mit gemeinsam genutztem Schlüssel für weitere Konten oder des Zulassens dieses Zugriffs für Konten, bei denen mehr Zeit für die Korrektur erforderlich ist.

Aktualisieren von Azure Policy, um das Zulassen des Zugriffs mit gemeinsam genutztem Schlüssel zu verhindern

Um mit dem Erzwingen der Azure Policy-Zuweisung zu beginnen, die Sie zuvor für die Richtlinie Speicherkonten sollten den Zugriff mit gemeinsam genutztem Schlüssel verhindern erstellt haben, ändern Sie den Effekt der Richtlinienzuweisung in Verweigern, um zu verhindern, dass autorisierte Benutzer den Zugriff mit gemeinsam genutztem Schlüssel auf Speicherkonten zulassen. Führen Sie die folgenden Schritte aus, um den Effekt der Richtlinie zu ändern:

  1. Suchen Sie im Azure Policy-Dashboard nach der zuvor erstellten Richtlinienzuweisung, und wählen Sie sie aus.

  2. Wählen Sie Zuweisung bearbeiten aus.

  3. Wechseln Sie zur Registerkarte Parameter.

  4. Deaktivieren Sie das Kontrollkästchen Nur Parameter anzeigen, die eine Eingabe oder Überprüfung erfordern.

  5. Ändern Sie in der Dropdownliste Effekt die Option Überwachen in Verweigern, und wählen Sie dann Überprüfen + speichern aus.

  6. Überprüfen Sie auf der Registerkarte Überprüfen + speichern Ihre Änderungen, und wählen Sie dann Speichern aus.

Hinweis

Es kann bis zu 30 Minuten dauern, bis Ihre Richtlinienänderung wirksam wird.

Nächste Schritte