Autorisieren des Zugriffs auf Daten in Azure Storage

Immer wenn Sie auf Daten in Ihrem Speicherkonto zugreifen, sendet Ihre Clientanwendung eine Anforderung über HTTP/HTTPS an Azure Storage. Standardmäßig ist jede Ressource in Azure Storage geschützt, und jede Anforderung an eine sichere Ressource muss autorisiert werden. Die Autorisierung stellt sicher, dass die Clientanwendung die entsprechenden Berechtigungen für den Zugriff auf eine bestimmte Ressource in Ihrem Speicherkonto hat.

Grundlegendes zur Autorisierung für Datenvorgänge

In der folgenden Tabelle werden die Optionen beschrieben, die in Azure Storage zum Autorisieren des Zugriffs auf Daten zur Verfügung stehen:

Azure-Artefakt Gemeinsam verwendeter Schlüssel (Speicherkontoschlüssel) Shared Access Signature (SAS) Microsoft Entra ID Lokale Active Directory Domain Services anonymer Lesezugriff Lokale Storage-Benutzer
Azure-Blobs Unterstützt Unterstützt Unterstützt Nicht unterstützt Unterstützt, aber nicht empfohlen Unterstützt, nur für SFTP
Azure Files (SMB) Unterstützt Nicht unterstützt Unterstützt, nur mit Microsoft Entra Domain Services für Cloud- oder Microsoft Entra Kerberos für Hybrididentitäten Unterstützt, Anmeldeinformationen müssen mit der Microsoft Entra-ID synchronisiert werden Nicht unterstützt Nicht unterstützt
Azure Files (REST) Unterstützt Unterstützt Unterstützt Nicht unterstützt Nicht unterstützt Nicht unterstützt
Azure-Warteschlangen Unterstützt Unterstützt Unterstützt Nicht unterstützt Nicht unterstützt Nicht unterstützt
Azure-Tabellen Unterstützt Unterstützt Unterstützt Nicht unterstützt Nicht unterstützt Nicht unterstützt

Im Anschluss werden die einzelnen Autorisierungsoptionen kurz erläutert:

  • Autorisierung mit gemeinsam verwendetem Schlüssel für Blobs, Dateien, Warteschlangen und Tabellen. Ein Client mit gemeinsam verwendetem Schlüssel übergibt mit jeder Anforderung einen Header, der mit dem Speicherkonto-Zugriffsschlüssel signiert wird. Weitere Informationen finden Sie unter Authentifizieren mit gemeinsam verwendetem Schlüssel.

    Microsoft empfiehlt, die Autorisierung mit gemeinsam verwendetem Schlüssel für Ihr Speicherkonto nicht zuzulassen. Wenn die Autorisierung mit gemeinsam verwendetem Schlüssel unzulässig ist, müssen Clients Azure AD oder eine SAS für die Benutzerdelegierung verwenden, um Anforderungen für Daten in diesem Speicherkonto zu autorisieren. Weitere Informationen finden Sie unter Verhindern der Autorisierung mit gemeinsam verwendeten Schlüsseln für ein Azure Storage-Konto.

  • Shared Access Signatures für Blobs, Dateien, Warteschlangen und Tabellen. Shared Access Signatures (SAS) ermöglichen den begrenzten delegierten Zugriff auf Ressourcen in einem Speicherkonto über eine signierte URL. Die signierte URL gibt die Berechtigungen an, die der Ressource und dem Intervall gewährt werden, in dem die Signatur gültig ist. Eine Dienst-SAS oder Konto-SAS ist mit dem Kontoschlüssel signiert, die SAS für die Benutzerdelegierung ist hingegen mit Azure AD-Anmeldeinformationen signiert und gilt nur für Blobs. Weitere Informationen finden Sie unter Verwenden von Shared Access Signatures (SAS).

  • Microsoft Entra-Integration für die Autorisierung von Anforderungen an Blob-, Warteschlangen- und Tabellenressourcen. Microsoft empfiehlt die Verwendung von Azure AD-Anmeldeinformationen zum Autorisieren von Anforderungen an Daten für optimale Sicherheit und einfache Bedienung, sofern möglich. Weitere Informationen zur Azure AD-Integration finden Sie in den Artikeln zu Blob, Warteschlangen- oder Tabellenressourcen.

    Sie können mithilfe der rollenbasierten Zugriffssteuerung von Azure (Role-Based Access Control, Azure RBAC) die Berechtigungen eines Sicherheitsprinzipals für Blob-, Warteschlangen- und Tabellenressourcen in einem Speicherkonto verwalten. Außerdem können Sie mit der attributbasierten Zugriffssteuerung (Attribute-Based Access Control, ABAC) von Azure Bedingungen zu Azure-Rollenzuweisungen für Blobressourcen hinzufügen.

    Weitere Informationen zu RBAC finden Sie unter Was ist die rollenbasierte Zugriffssteuerung in Azure (Azure Role-Based Access Control, Azure RBAC)?.

    Weitere Informationen zu ABAC und dem Featurestatus finden Sie unter:

    Was ist die attributbasierte Zugriffssteuerung in Azure (Azure Attribute-Based Access Control, Azure ABAC)?

    Status der Features von ABAC-Bedingungen

    Status der ABAC-Bedingungsfeatures in Azure Storage

  • Aktivieren der Microsoft Entra Domain Services-Authentifizierung in Azure Files Azure Files unterstützt die identitätsbasierte Autorisierung über SMB (Server Message Block) über Microsoft Entra Domain Services. Sie können die rollenbasierte Zugriffssteuerung in Azure (Azure Role-Based Access Control, Azure RBAC) für eine präzise Steuerung des Clientzugriffs auf Azure Files-Ressourcen in einem Speicherkonto verwenden. Weitere Informationen zur Azure Files-Authentifizierung mithilfe von Domänendiensten finden Sie in der Übersicht.

  • Authentifizierung mit lokalen Active Directory Domain Services (AD DS oder lokale AD DS) für Azure Files. Azure Files unterstützen die identitätsbasierte Autorisierung über SMB durch AD DS. Ihre AD DS-Umgebung kann auf lokalen Computern oder auf Azure-VMs gehostet werden. Der SMB-Zugriff auf Dateien wird mithilfe von AD DS-Anmeldeinformationen von Computern aus unterstützt, die in die Domäne eingebunden sind – entweder lokal oder in Azure. Sie können eine Kombination aus Azure RBAC für die Zugriffssteuerung auf Freigabeebene und aus NTFS-DACLs für die Berechtigungserzwingung auf Verzeichnis-/Dateiebene verwenden. Weitere Informationen zur Azure Files-Authentifizierung mithilfe von Domänendiensten finden Sie in der Übersicht.

  • Anonymer öffentlicher Lesezugriff für Blobdaten wird unterstützt, aber nicht empfohlen. Wenn anonymer Zugriff konfiguriert wurde, können Clients Blobdaten ohne Autorisierung lesen. Es wird empfohlen, anonymen Zugriff für alle Speicherkonten zu deaktivieren. Weitere Informationen finden Sie unter Übersicht: Korrigieren des anonymen öffentlichen Lesezugriffs für Blobdaten.

  • Lokale Storage-Benutzer kann verwendet werden, um auf Blobs mit SFTP oder auf Dateien mit SMB zuzugreifen. „Lokale Storage-Benutzer“ unterstützt Berechtigungen auf Containerebene für die Autorisierung. Weitere Informationen dazu, wie „Lokale Storage-Benutzer“ mit SFTP verwendet werden kann, finden Sie unter Herstellen einer Verbindung mit Azure Blob Storage mit SFTP (SSH File Transfer Protocol).

Schützen Ihrer Zugriffsschlüssel

Speicherkonto-Zugriffsschlüssel bieten Vollzugriff auf die Konfiguration eines Speicherkontos sowie auf die Daten. 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 Konfiguration eines Speicherkontos und die zugehörigen Daten. Der Zugriff auf den gemeinsam verwendeten Schlüssel sollte sorgfältig eingeschränkt und überwacht werden. Verwenden Sie SAS-Token mit eingeschränktem Zugriffsbereich in Szenarien, in denen die Azure AD-basierte 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

Microsoft empfiehlt, zum Autorisieren von Anforderungen an Blob-, Warteschlangen- und Tabellendaten nach Möglichkeit Azure Active Directory (Azure AD) statt der Kontoschlüssel (Autorisierung mit gemeinsam verwendetem Schlüssel) zu verwenden. Die Autorisierung mit Azure AD bietet eine höhere Sicherheit und Benutzerfreundlichkeit als die Autorisierung mit gemeinsam verwendetem Schlüssel. Weitere Informationen zur Verwendung der Azure AD-Autorisierung aus Ihren Anwendungen finden Sie unterSo authentifizieren Sie .NET-Apps für Azure-Dienste mithilfe des .NET Azure SDK. Für SMB-Azure-Dateifreigaben empfiehlt Microsoft die Verwendung der lokalen Active Directory Domain Services (AD DS)-Integration oder der Azure AD Kerberos-Authentifizierung.

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. Die Azure AD-basierte Autorisierung 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. Weitere Informationen finden Sie unter Vertrauenswürdiger Zugriff für Ressourcen, die in Ihrem Abonnement registriert sind.

Nächste Schritte