Grundlegendes zu Speicherkontoschlüsseln

Abgeschlossen

Ein Großteil der Daten von Contoso wird von benutzerdefinierten Anwendungen generiert und genutzt. Diese Anwendungen sind in unterschiedlichen Sprachen geschrieben.

Azure-Speicherkonten können autorisierte Apps in Active Directory erstellen, um den Zugriff auf Daten in Blobs und Warteschlangen zu steuern. Dieser Authentifizierungsansatz ist die ideale Lösung für Apps, die Azure Blob Storage oder Queue Storage verwenden.

Für andere Speichermodelle können Clients einen gemeinsam verwendeten Schlüssel oder ein gemeinsames Geheimnis verwenden. Diese Authentifizierungsoption ist leicht zu verwenden und unterstützt Blobs, Dateien, Warteschlangen und Tabellen. Der Client bettet den gemeinsamen Schlüssel in den HTTP-Authorization-Header jeder Anforderung ein, und das Speicherkonto überprüft den Schlüssel.

Beispielsweise kann eine Anwendung eine GET-Anforderung mit einer Blobressource ausgeben:

GET http://myaccount.blob.core.windows.net/?restype=service&comp=stats

HTTP-Header bestimmen die Version der REST-API, das Datum und den codierten gemeinsam verwendeten Schlüssel:

x-ms-version: 2018-03-28  
Date: Wed, 23 Oct 2018 21:00:44 GMT  
Authorization: SharedKey myaccount:CY1OP3O3jGFpYFbTCBimLn0Xov0vt0khH/E5Gy0fXvg=

Speicherkontoschlüssel

Gemeinsam verwendete Schlüssel in Azure-Speicherkonten werden als Speicherkontoschlüssel bezeichnet. Azure erstellt zwei dieser Schlüssel (primär und sekundär) für jedes von Ihnen erstellte Speicherkonto. Sie Schlüsseln erlauben den Zugriff auf alles im Konto.

Sie erhalten die Speicherkontoschlüssel in der Azure-Portal-Ansicht des Speicherkontos. Wählen Sie im linken Menübereich Ihres Speicherkontos Sicherheit + Netzwerkbetrieb>Zugriffsschlüssel aus.

Screenshot showing the access keys in the Azure portal.

Schützen gemeinsam verwendeter Schlüssel

Das Speicherkonto verfügt lediglich über zwei Schlüssel, die Vollzugriff auf das Konto gewähren. Da diese Schlüssel Vollzugriff gewähren, wird empfohlen, diese nur für vertrauenswürdige interne Anwendungen zu verwenden, für die Sie komplett verantwortlich sind.

Wenn die Schlüssel kompromittiert sind, ändern Sie die Schlüsselwerte im Azure-Portal. Es gibt verschiedene Gründe, Ihre Speicherkontoschlüssel erneut zu generieren:

  • Aus Sicherheitsgründen sollten Sie Ihre Schlüssel in regelmäßigen Abständen erneut generieren.
  • Wenn sich ein Angreifer Zugriff auf Ihre Anwendungen verschafft und einen Schlüssel erhält, der hartcodiert oder in einer Konfigurationsdatei gespeichert wurde, sollten Sie diesen Schlüssel erneut generieren. Durch den kompromittierten Schlüssel kann der Angreifer Vollzugriff auf Ihr Speicherkonto erhalten.
  • Wenn Ihr Team eine Storage-Explorer-Anwendung verwendet, in der der Speicherkontoschlüssel aufbewahrt wird und eines der Mitglieder das Team verlässt, sollten Sie den Schlüssel erneut generieren. Ansonsten kann dieses ehemalige Teammitglied die Anwendung weiterhin verwenden und auf Ihr Speicherkonto zugreifen.

So können Sie Schlüssel aktualisieren:

  • Ändern Sie jede vertrauenswürdige App, sodass sie den sekundären Schlüssel verwendet.
  • Aktualisieren Sie den primären Schlüssel im Azure-Portal. Dies ist der neue sekundäre Schlüsselwert.

Wichtig

Nach der Aktualisierung der Schlüssel wird jedem Client der Zugriff verwehrt, der den alten Schlüsselwert verwendet. Stellen Sie sicher, dass Sie alle Clients identifizieren, die den gemeinsam verwendeten Schlüssel verwenden, und aktualisieren Sie diese, um Sie betriebsbereit zu halten.