Verwalten von Speicherkonto-Zugriffsschlüsseln

Wenn Sie ein Speicherkonto erstellen, generiert Azure zwei 512-Bit-Speicherkonto-Zugriffsschlüssel für dieses Konto. Diese Schlüssel können verwendet werden, um den Zugriff auf Daten in Ihrem Speicherkonto über die Autorisierung mit gemeinsam genutztem Schlüssel oder über SAS-Token zu autorisieren, die mit dem freigegebenen Schlüssel signiert sind.

Microsoft empfiehlt die Verwendung von Azure Key Vault zum Verwalten Ihrer Zugriffsschlüssel sowie ein regelmäßiges Rotieren und Neugenerieren Ihrer Schlüssel. Mit Azure Key Vault können Sie die Schlüssel auf einfache Weise rotieren, ohne dass Ihre Anwendungen unterbrochen werden. Sie können Ihre Schlüssel auch manuell rotieren.

Wichtig

Um optimale Sicherheit zu gewährleisten, empfiehlt Microsoft möglichst die Verwendung von Microsoft Entra ID mit verwalteten Identitäten, um Anforderungen für Blob-, Warteschlangen- und Tabellendaten zu autorisieren. Die Autorisierung mit Microsoft Entra ID und verwalteten Identitäten bietet eine höhere Sicherheit und Benutzerfreundlichkeit als die Autorisierung mit gemeinsam verwendetem Schlüssel. Weitere Informationen zu verwalteten Identitäten finden Sie unter Was sind verwaltete Identitäten für Azure-Ressourcen?. Ein Beispiel zum Aktivieren und Verwenden einer verwalteten Identität für eine .NET-Anwendung finden Sie unter Authentifizieren von Azure-gehosteten Apps bei Azure-Ressourcen mit .NET.

Für Ressourcen, die außerhalb von Azure gehostet werden, z. B. lokale Anwendungen, können Sie verwaltete Identitäten über Azure Arc verwenden. Beispielsweise können Apps, die auf Azure Arc-fähigen Servern ausgeführt werden, verwaltete Identitäten verwenden, um eine Verbindung mit Azure-Diensten herzustellen. Weitere Informationen finden Sie unter Authentifizieren bei Azure-Ressourcen mit Azure Arc-fähigen Servern.

Für Szenarien, in denen SAS (Shared Access Signatures) verwendet werden, empfiehlt Microsoft die Verwendung einer Benutzerdelegierungs-SAS. Eine Benutzerdelegierungs-SAS wird mit Microsoft Entra-Anmeldeinformationen und nicht mithilfe des Kontoschlüssels geschützt. Informationen zu Shared Access Signatures finden Sie unter Gewähren von eingeschränktem Zugriff auf Daten mithilfe von SAS (Shared Access Signature). Ein Beispiel zum Erstellen und Verwenden einer Benutzerdelegierungs-SAS mit .NET finden Sie unter Erstellen einer SAS für die Benutzerdelegierung für ein Blob mit .NET.

Schützen Ihrer Zugriffsschlüssel

Zugriffsschlüssel für Speicherkonten bieten Vollzugriff auf die Daten des Speicherkontos und die Möglichkeit, SAS-Token zu generieren. Achten Sie darauf, die Zugriffsschlüssel immer gut zu schützen. Verwenden Sie Azure Key Vault zum sicheren Verwalten und Rotieren Ihrer Schlüssel. Der Zugriff auf den gemeinsam verwendeten Schlüssel gewährt einem Benutzer Vollzugriff auf die Daten eines Speicherkontos. Der Zugriff auf den gemeinsam verwendeten Schlüssel sollte sorgfältig eingeschränkt und überwacht werden. Verwenden Sie SAS-Token für die Benutzerdelegierung mit eingeschränktem Zugriffsbereich in Szenarien, in denen die auf Microsoft Entra ID basierende Autorisierung nicht verwendet werden kann. Vermeiden Sie die Hartcodierung von Zugriffsschlüsseln, und speichern Sie die Schlüssel nicht irgendwo im Klartext, wo sie für andere zugänglich sind. Rotieren Sie die Schlüssel, wenn Sie glauben, dass sie gefährdet sind.

Wichtig

Wenn Sie verhindern möchten, dass Benutzer mit einem gemeinsam verwendeten Schlüssel auf Daten in Ihrem Speicherkonto zugreifen, können Sie die Autorisierung mit einem gemeinsam verwendeten Schlüssel für das Speicherkonto verweigern. Als bewährte Sicherheitsmethode wird ein präziser Zugriff auf Daten mit den geringsten erforderlichen Berechtigungen empfohlen. Microsoft Entra ID-basierte Autorisierung mit verwalteten Identitäten sollte für Szenarien verwendet werden, die OAuth unterstützen. Kerberos oder SMTP sollte für Azure Files über SMB verwendet werden. Für Azure Files über REST können SAS-Token verwendet werden. Der Zugriff auf gemeinsam verwendete Schlüssel sollte deaktiviert werden, wenn er nicht erforderlich ist, um die unbeabsichtigte Verwendung zu verhindern. Weitere Informationen finden Sie unter Verhindern der Autorisierung mit gemeinsam verwendeten Schlüsseln für ein Azure Storage-Konto.

Um ein Azure Storage-Konto mit Azure AD-Richtlinien für bedingten Zugriff zu schützen, müssen Sie die Autorisierung mit gemeinsam verwendetem Schlüssel für das Speicherkonto untersagen.

Wenn Sie den Zugriff auf gemeinsam genutzte Schlüssel deaktiviert haben und die Autorisierung des freigegebenen Schlüssels in den Diagnoseprotokollen gemeldet wird, bedeutet dies, dass der vertrauenswürdige Zugriff für den Zugriff auf Speicher verwendet wird. Ausführlichere Informationen finden Sie unter Vertrauenswürdiger Zugriff für Ressourcen, die in Ihrem Microsoft Entra-Mandanten registriert sind.

Anzeigen von Kontozugriffsschlüsseln

Sie können Ihre Kontozugriffsschlüssel mit dem Azure-Portal, PowerShell oder der Azure CLI anzeigen und kopieren. Das Azure-Portal stellt auch eine Verbindungszeichenfolge für Ihr Speicherkonto bereit, die Sie kopieren können.

Führen Sie folgende Schritte durch, um die Zugriffsschlüssel oder Verbindungszeichenfolge Ihres Speicherkontos aus dem Azure-Portal anzuzeigen oder zu kopieren:

  1. Wechseln Sie im Azure-Portal zu Ihrem Speicherkonto.

  2. Wählen Sie unter Sicherheit + Netzwerk die Option Zugriffsschlüssel aus. Daraufhin werden Ihre Zugriffsschlüssel zusammen mit der jeweiligen vollständigen Verbindungszeichenfolge angezeigt.

  3. Wählen Sie Schlüssel anzeigen aus, um Ihre Zugriffsschlüssel und Verbindungszeichenfolgen anzuzeigen und Schaltflächen zum Kopieren der Werte zu aktivieren.

  4. Suchen Sie unter key1 nach dem Wert für Schlüssel. Wählen Sie die Schaltfläche Kopieren aus, um den Kontoschlüssel zu kopieren.

  5. Alternativ können Sie die gesamte Verbindungszeichenfolge kopieren. Suchen Sie unter key1 nach dem Wert für Verbindungszeichenfolge. Wählen Sie die Schaltfläche Kopieren aus, um die Verbindungszeichenfolge zu kopieren.

    Screenshot, der zeigt, wie Sie Zugriffsschlüssel im Azure-Portal anzeigen

Sie können jeden der beiden Schlüssel verwenden, um auf Azure Storage zuzugreifen. Im Allgemeinen empfiehlt es sich jedoch, den ersten Schlüssel zu verwenden und den zweiten Schlüssel zur Verwendung bei der Rotation von Schlüsseln zu reservieren.

Zum Anzeigen oder Lesen der Zugriffsschlüssel eines Kontos muss der Benutzer entweder ein Dienstadministrator sein oder ihm muss eine Azure-Rolle zugewiesen sein, die Microsoft.Storage/storageAccounts/listkeys/action enthält. Einige integrierte Azure-Rollen, die diese Aktion beinhalten, sind Besitzer, Mitwirkender und die Dienstrolle Speicherkonto-Schlüsseloperator. Weitere Informationen zur Dienstadministratorrolle finden Sie unter Azure-Rollen, Microsoft Entra-Rollen und Administratorrollen für klassische Abonnements. Ausführliche Informationen zu integrierten Rollen für Azure Storage finden Sie im Artikel In Azure integrierte Rollen für Azure RBAC im Abschnitt Storage.

Verwenden von Azure Key Vault zum Verwalten Ihrer Zugriffsschlüssel

Microsoft empfiehlt die Verwendung von Azure Key Vault zum Verwalten und Rotieren Ihrer Zugriffsschlüssel. Ihre Anwendung kann auf sichere Weise auf die Schlüssel in Key Vault zugreifen, sodass Sie diese nicht mit dem Anwendungscode speichern müssen. Weitere Informationen zur Verwendung von Key Vault für die Schlüsselverwaltung finden Sie in den folgenden Artikeln:

Manuelles Rotieren von Zugriffsschlüsseln

Microsoft empfiehlt, Ihre Zugriffsschlüssel regelmäßig zu rotieren, um die Sicherheit Ihres Speicherkontos zu gewährleisten. Verwenden Sie nach Möglichkeit Azure Key Vault zum Verwalten Ihrer Zugriffsschlüssel. Wenn Sie Key Vault nicht verwenden, müssen Sie die Schlüssel manuell rotieren.

Es werden zwei Zugriffsschlüssel zugewiesen, sodass Sie Ihre Schlüssel rotieren können. Durch das Vorhandensein von zwei Schlüsseln ist sichergestellt, dass der Zugriff Ihrer Anwendung auf Azure Storage während des Prozesses erhalten bleibt.

Warnung

Das erneute Generieren Ihrer Zugriffsschlüssel kann sich auf Anwendungen oder Azure-Dienste auswirken, die von dem Speicherkontoschlüssel abhängig sind. Alle Clients, die den Kontoschlüssel verwenden, um auf das Speicherkonto zuzugreifen, müssen aktualisiert werden, damit der neue Schlüssel verwendet wird, einschließlich Media Services, Cloud-, Desktop- und mobiler Anwendungen sowie grafischer Benutzeroberflächenanwendungen für Azure Storage wie Azure Storage-Explorer.

Darüber hinaus werden Shared Access Signatures (SAS), die basierend auf diesem Schlüssel generiert werden, gedreht oder neu generiert. Nach der Rotation des Zugriffsschlüssels müssen Sie SAS-Token auf Konto- und Dienstebene neu generieren, um Unterbrechungen von Anwendungen zu vermeiden. Beachten Sie, dass SAS-Token für die Benutzerdelegierung mit Microsoft Entra-Anmeldeinformationen geschützt werden und nicht von der Schlüsselrotation betroffen sind.

Wenn Sie Zugriffsschlüssel manuell rotieren möchten, empfiehlt Microsoft, eine Ablaufrichtlinie für Schlüssel festzulegen. Weitere Informationen finden Sie im Artikel zum Erstellen einer Ablaufrichtlinie für Schlüssel.

Nachdem Sie die Ablaufrichtlinie für Schlüssel erstellt haben, können Sie mit Azure Policy überwachen, ob die Schlüssel eines Speicherkontos innerhalb des empfohlenen Intervalls rotiert wurden. Details finden Sie unter Prüfen auf Verletzungen von Schlüsselablaufrichtlinien.

Gehen Sie wie folgt vor, um Ihre Speicherkonto-Zugriffsschlüssel im Azure-Portal zu rotieren:

  1. Aktualisieren Sie die Verbindungszeichenfolgen im Anwendungscode, sodass sie auf den sekundären Zugriffsschlüssel des Speicherkontos verweisen.
  2. Navigieren Sie zum Speicherkonto im Azure-Portal.
  3. Wählen Sie unter Sicherheit + Netzwerk die Option Zugriffsschlüssel aus.
  4. Klicken Sie auf die Schaltfläche Neu generieren neben dem primären Zugriffsschlüssel, um den primären Zugriffsschlüssel für Ihr Speicherkonto neu zu generieren.
  5. Aktualisieren Sie die Verbindungszeichenfolgen in Ihrem Code, um auf den neuen primären Zugriffsschlüssel zu verweisen.
  6. Generieren Sie den sekundären Zugriffsschlüssel auf die gleiche Weise erneut.

Achtung

Es wird empfohlen, in allen Ihren Anwendungen jeweils nur einen Schlüssel gleichzeitig zu verwenden. Wenn Sie „Key 1“ an einigen Stellen und „Key 2“ an anderen verwenden, können Sie die Verwendung der Schlüssel nicht wechseln, ohne dass einige Anwendungen den Zugriff verlieren.

Zum Rotieren der Zugriffsschlüssel eines Kontos muss der Benutzer entweder ein Dienstadministrator sein oder ihm muss eine Azure-Rolle zugewiesen sein, die Microsoft.Storage/storageAccounts/regeneratekey/action enthält. Einige integrierte Azure-Rollen, die diese Aktion beinhalten, sind Besitzer, Mitwirkender und die Dienstrolle Speicherkonto-Schlüsseloperator. Weitere Informationen zur Dienstadministratorrolle finden Sie unter Azure-Rollen, Microsoft Entra-Rollen und Administratorrollen für klassische Abonnements. Ausführliche Informationen zu integrierten Azure-Rollen für Azure Storage finden Sie im Artikel In Azure integrierte Rollen für Azure RBAC im Abschnitt Storage.

Erstellen einer Richtlinie für den Schlüsselablauf

Mit einer Richtlinie für den Schlüsselablauf können Sie eine Erinnerung für die Rotation der Kontozugriffsschlüssel festlegen. Die Erinnerung wird angezeigt, wenn das angegebene Intervall abgelaufen ist und noch keine Schlüsselrotation durchgeführt wurde. Nachdem Sie eine Richtlinie für den Schlüsselablauf erstellt haben, können Sie Ihre Speicherkonten auf Einhaltung der Richtlinie überwachen, um sicherzustellen, dass die Kontozugriffsschlüssel regelmäßig rotiert werden.

Hinweis

Damit Sie eine Richtlinie für den Schlüsselablauf erstellen können, müssen möglicherweise alle Kontozugriffsschlüssel mindestens einmal rotiert werden.

Zum Erstellen einer Richtlinie für den Schlüsselablauf im Azure-Portal gehen Sie folgendermaßen vor:

  1. Wechseln Sie im Azure-Portal zu Ihrem Speicherkonto.
  2. Wählen Sie unter Sicherheit + Netzwerk die Option Zugriffsschlüssel aus. Daraufhin werden Ihre Zugriffsschlüssel zusammen mit der jeweiligen vollständigen Verbindungszeichenfolge angezeigt.
  3. Wählen Sie die Schaltfläche Rotationserinnerung festlegen aus. Wenn die Schaltfläche Rotationserinnerung festlegen abgeblendet ist, müssen Sie jeden Ihrer Schlüssel rotieren. Führen Sie die unter Manuelles Rotieren von Zugriffsschlüsseln beschriebenen Schritte aus, um die Schlüssel zu rotieren.
  4. Aktivieren Sie unter Eine Erinnerung an die Zugriffsschlüsselrotation festlegen das Kontrollkästchen Die Erinnerung an die Schlüsselrotation aktivieren, und legen Sie eine Häufigkeit für die Erinnerung fest.
  5. Wählen Sie Speichern aus.

Screenshot: Erstellen einer Richtlinie für den Schlüsselablauf im Azure-Portal

Prüfen auf Verletzungen von Schlüsselablaufrichtlinien

Sie können Ihre Speicherkonten mit Azure Policy überwachen, um sicherzustellen, dass die Kontozugriffsschlüssel innerhalb des empfohlenen Zeitraums rotiert wurden. Azure Storage umfasst eine integrierte Richtlinie, mit der Sie sicherstellen können, dass die Zugriffsschlüssel für das Speicherkonto nicht abgelaufen sind. Weitere Informationen zur integrierten Richtlinie finden Sie unter Speicherkontoschlüssel sollten nicht abgelaufen sein und Liste der integrierten Richtliniendefinitionen.

Zuweisen der integrierten Richtlinie für einen Ressourcenbereich

Führen Sie die folgenden Schritte aus, um die integrierte Richtlinie dem 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 Allgemeine Informationen 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 ggf. die Ressourcengruppe auszuwählen.

  5. Wählen Sie für das Feld Richtliniendefinition die Schaltfläche Mehr aus, und geben Sie Speicherkontoschlüssel in das Feld Suchen ein. Wählen Sie die Richtliniendefinition namens Speicherkontoschlüssel sollten nicht abgelaufen sein aus.

    Screenshot: Auswählen der integrierten Richtlinie, um Intervalle für die Schlüsselrotation für Ihre Speicherkonten zu überwachen

  6. Wählen Sie Überprüfen + erstellen aus, um die Richtliniendefinition dem angegebenen Bereich zuzuweisen.

    Screenshot: Erstellen der Richtlinienzuweisung

Überwachen der Einhaltung der Schlüsselablaufrichtlinie

Führen Sie die folgenden Schritte aus, um Ihre Speicherkonten auf die Einhaltung der Schlüsselablaufrichtlinie zu überwachen:

  1. Suchen Sie im Azure Policy-Dashboard die Definition der integrierten Richtlinie für den Bereich, den Sie in der Richtlinienzuweisung angegeben haben. Sie können nach Speicherkontoschlüssel sollten nicht abgelaufen sein im Suchfeld suchen, um nach der integrierten Richtlinie zu filtern.

  2. Wählen Sie den Namen der Richtlinie mit dem gewünschten Bereich aus.

  3. Wählen Sie auf der Seite Richtlinienzuweisung für die integrierte Richtlinie die Option Konformität anzeigen aus. Alle Speicherkonten im angegebenen Abonnement und in der Ressourcengruppe, die die Richtlinienanforderungen nicht erfüllen, werden im Konformitätsbericht angezeigt.

    Screenshot: Anzeigen des Complianceberichts für die integrierte Schlüsselablaufrichtlinie

Rotieren Sie die Kontozugriffsschlüssel, damit ein Speicherkonto die Richtlinie einhält.

Nächste Schritte