Erstellen eines Kontos SAS

Wichtig

Für eine optimale Sicherheit empfiehlt Microsoft die Verwendung der Microsoft Entra-ID mit verwalteten Identitäten, um Anforderungen für Blob-, Warteschlangen- und Tabellendaten zu autorisieren, wenn möglich. Die Autorisierung mit Microsoft Entra ID und verwalteten Identitäten bietet eine überlegene Sicherheit und Benutzerfreundlichkeit gegenüber der Shared Key-Autorisierung. Weitere Informationen finden Sie unter Autorisieren mit microsoft Entra ID. Weitere Informationen zu verwalteten Identitäten finden Sie unter Was sind verwaltete Identitäten für Azure-Ressourcen.

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 von Azure-Ressourcen mit Azure Arc-fähigen Servern.

Für Szenarien, in denen freigegebene Zugriffssignaturen (SAS) verwendet werden, empfiehlt Microsoft die Verwendung einer Benutzerdelegierungs-SAS. Eine Benutzerdelegierungs-SAS ist anstelle des Kontoschlüssels mit Microsoft Entra-Anmeldeinformationen gesichert. Informationen zu freigegebenen Zugriffssignaturen finden Sie unter Erstellen einer Benutzerdelegierung SAS-.

Ab Version 2015-04-05 unterstützt Azure Storage das Erstellen eines neuen Typs der Freigegebenen Zugriffssignatur (SAS) auf der Ebene des Speicherkontos. Indem Sie ein Konto SAS erstellen, können Sie folgende Aktionen ausführen:

  • Delegieren Sie den Zugriff auf Vorgänge auf Serviceebene, die derzeit nicht mit einer dienstspezifischen SAS verfügbar sind, z. B. den Get/Set Service Properties- und Get Service Stats-Vorgängen.

  • Delegieren Sie gleichzeitig den Zugriff auf mehrere Dienste in einem Speicherkonto. Sie können beispielsweise den Zugriff auf Ressourcen in Azure Blob Storage und Azure Files mithilfe eines Kontos SAS delegieren.

  • Delegieren Sie den Zugriff auf Schreib- und Löschvorgänge für Container, Warteschlangen, Tabellen und Dateifreigaben, die mit einer objektspezifischen SAS nicht verfügbar sind.

  • Geben Sie eine IP-Adresse oder einen Bereich von IP-Adressen an, aus denen Anforderungen akzeptiert werden sollen.

  • Geben Sie das HTTP-Protokoll an, aus dem Anforderungen akzeptiert werden sollen (entweder HTTPS oder HTTP/HTTPS).

Gespeicherte Zugriffsrichtlinien werden derzeit für ein Konto SAS nicht unterstützt.

Vorsicht

Freigegebene Zugriffssignaturen sind Schlüssel, die Berechtigungen für Speicherressourcen gewähren, und Sie sollten diese genauso schützen, wie Sie einen Kontoschlüssel schützen würden. Es ist wichtig, ein SAS vor böswilliger oder unbeabsichtigter Verwendung zu schützen. Verwenden Sie die Diskretion bei der Verteilung einer SAS und haben Sie einen Plan zum Widerrufen einer kompromittierten SAS. Vorgänge, die freigegebene Zugriffssignaturen verwenden, sollten nur über eine HTTPS-Verbindung ausgeführt werden, und SAS-URIs sollten nur für eine sichere Verbindung wie HTTPS verteilt werden.

Autorisieren eines Kontos SAS

Sie sichern ein Konto SAS mithilfe eines Speicherkontoschlüssels. Wenn Sie ein Konto SAS erstellen, muss Ihre Clientanwendung über den Kontoschlüssel verfügen.

Um Microsoft Entra-Anmeldeinformationen zum Sichern einer SAS für einen Container oder Blob zu verwenden, eine Benutzerdelegierung SAS-erstellen.

Erstellen eines SAS-URI eines Kontos

Der SAS-URI des Kontos besteht aus dem URI für die Ressource, für die die SAS den Zugriff delegiert, gefolgt von einem SAS-Token. Das SAS-Token ist die Abfragezeichenfolge, die alle Informationen enthält, die zum Autorisieren einer Anforderung an die Ressource erforderlich sind. Er gibt den Dienst, die Ressource und die Berechtigungen an, die für den Zugriff verfügbar sind, und den Zeitraum, in dem die Signatur gültig ist.

Angeben der Konto-SAS-Parameter

Die erforderlichen und optionalen Parameter für das SAS-Token werden in der folgenden Tabelle beschrieben:

SAS-Abfrageparameter Beschreibung
api-version Wahlfrei. Gibt die Speicherdienstversion an, die zum Ausführen der Anforderung verwendet werden soll, die mithilfe des SAS-URI des Kontos erfolgt. Weitere Informationen finden Sie unter Autorisieren von Anforderungen mithilfe einer freigegebenen Zugriffssignatur.
SignedVersion (sv) Erforderlich. Gibt die signierte Speicherdienstversion an, die verwendet werden soll, um Anforderungen zu autorisieren, die mit diesem Konto SAS vorgenommen werden. Er muss auf Version 2015-04-05 oder höher festgelegt werden. Weitere Informationen finden Sie unter Autorisieren von Anforderungen mithilfe einer freigegebenen Zugriffssignatur.
SignedServices (ss) Erforderlich. Gibt die signierten Dienste an, auf die mit dem Konto SAS zugegriffen werden kann. Mögliche Werte sind:

- Blob (b)
- Warteschlange (q)
- Tabelle (t)
- Datei (f)

Sie können Werte kombinieren, um Zugriff auf mehrere Dienste bereitzustellen. Beispielsweise gibt ss=bf den Zugriff auf die Blob Storage- und Azure Files-Endpunkte an.
SignedResourceTypes (srt) Erforderlich. Gibt die signierten Ressourcentypen an, auf die mit dem Konto SAS zugegriffen werden kann.

- Dienst (s): Zugriff auf APIs auf Dienstebene (z. B. Get/Set Service Properties, Get Service Stats, List Containers/Queues/Tables/Shares).
- Container (c): Zugriff auf APIs auf Containerebene (z. B. Create/Delete Container, Create/Delete Queue, Create/Delete Table, Create/Delete Share, List Blobs/Files and Directories).
- Objekt (o): Zugriff auf APIs auf Objektebene für Blobs, Warteschlangennachrichten, Tabellenentitäten und Dateien (z. B. Put Blob, Query Entity, Get Messages, Create File).

Sie können Werte kombinieren, um Zugriff auf mehrere Ressourcentypen zu ermöglichen. Beispielsweise gibt srt=sc den Zugriff auf Dienst- und Containerressourcen an.
SignedPermissions (sp) Erforderlich. Gibt die signierten Berechtigungen für das Konto SAS an. Berechtigungen sind nur gültig, wenn sie mit dem angegebenen signierten Ressourcentyp übereinstimmen. Wenn sie nicht übereinstimmen, werden sie ignoriert.

- Read (r): Gültig für alle signierten Ressourcentypen (Dienst, Container und Objekt). Ermöglicht Leseberechtigungen für den angegebenen Ressourcentyp.
- Write (w): Gültig für alle signierten Ressourcentypen (Dienst, Container und Objekt). Ermöglicht schreibgeschützten Zugriff für den angegebenen Ressourcentyp, sodass ein Benutzer Ressourcen erstellen und aktualisieren kann.
- Delete (d): Gültig für Container- und Objektressourcentypen, mit Ausnahme von Warteschlangenmeldungen.
- Version löschen (x): Gilt nur für den Objektressourcentyp des BLOB.
- Permanent Delete (y): Nur gültig für den Objektressourcentyp des BLOB.
- Liste (l): Gilt nur für Dienst- und Containerressourcentypen.
- Add (a): Gilt nur für die folgenden Objektressourcentypen: Warteschlangenmeldungen, Tabellenentitäten und Anfügen von Blobs.
- Create (c): Gültig für Containerressourcentypen und die folgenden Objektressourcentypen: Blobs und Dateien. Benutzer können neue Ressourcen erstellen, vorhandene Ressourcen jedoch möglicherweise nicht überschreiben.
- Update (u): Gilt nur für die folgenden Objektressourcentypen: Warteschlangenmeldungen und Tabellenentitäten.
- Prozess (p): Gilt nur für den folgenden Objektressourcentyp: Warteschlangenmeldungen.
- Tag (t): Gilt nur für den folgenden Objektressourcentyp: Blobs. Ermöglicht Blob-Tag-Vorgänge.
- Filter (f): Gilt nur für den folgenden Objektressourcentyp: blob. Ermöglicht das Filtern nach Blob-Tag.
- Festlegen der Unveränderbarkeitsrichtlinie (i): Gilt nur für den folgenden Objektressourcentyp: blob. Erlaubt die Richtlinie zur Unveränderbarkeitsrichtlinie und die gesetzliche Aufbewahrungspflicht für ein Blob.
SignedStart (st) Wahlfrei. Die Zeit, zu der die SAS gültig wird, ausgedrückt in einem der akzeptierten ISO 8601 UTC-Formate. Wenn er ausgelassen wird, wird davon ausgegangen, dass die Startzeit der Zeitpunkt ist, zu dem der Speicherdienst die Anforderung empfängt. Weitere Informationen zu akzeptierten UTC-Formaten finden Sie unter Formatierung von DateTime-Werten.
SignedExpiry (se) Erforderlich. Der Zeitpunkt, zu dem die Signatur für den freigegebenen Zugriff ungültig wird, ausgedrückt in einem der akzeptierten ISO 8601 UTC-Formate. Weitere Informationen zu akzeptierten UTC-Formaten finden Sie unter Formatierung von DateTime-Werten.
SignedIP (sip) Wahlfrei. Gibt eine IP-Adresse oder einen Bereich von IP-Adressen an, aus denen Anforderungen akzeptiert werden sollen. Beachten Sie beim Angeben eines Bereichs, dass der Bereich inklusive ist. Es werden nur IPv4-Adressen unterstützt.

Beispiel: sip=198.51.100.0 oder sip=198.51.100.10-198.51.100.20.
SignedProtocol (spr) Wahlfrei. Gibt das Protokoll an, das für eine Anforderung mit dem Konto SAS zulässig ist. Mögliche Werte sind sowohl HTTPS als auch HTTP (https,http) oder NUR HTTPS (https). Der Standardwert ist https,http.

Beachten Sie, dass HTTP nur kein zulässiger Wert ist.
SignedEncryptionScope (ses) Wahlfrei. Gibt den Verschlüsselungsbereich an, der zum Verschlüsseln des Anforderungsinhalts verwendet werden soll. Dieses Feld wird mit Version 2020-12-06 und höher unterstützt.
Signature (sig) Erforderlich. Der Signaturteil des URI wird verwendet, um die Anforderung zu autorisieren, die mit der Freigegebenen Zugriffssignatur erfolgt.

Das Zeichenfolgen-zu-Zeichen ist eine eindeutige Zeichenfolge, die aus den Feldern erstellt wird, die überprüft werden müssen, um die Anforderung zu autorisieren. Die Signatur ist ein hashbasierter Nachrichtenauthentifizierungscode (HMAC), der mithilfe des SHA256-Algorithmus über die Zeichenfolgen-zu-Signierung und den Schlüssel berechnet und dann mithilfe der Base64-Codierung codiert wird.

Angeben des felds signedVersion

Das Feld signedVersion (sv) enthält die Dienstversion der Signatur für den freigegebenen Zugriff. Dieser Wert gibt die Version der Shared Key-Autorisierung an, die von dieser freigegebenen Zugriffssignatur (im Feld signature) verwendet wird. Der Wert gibt auch die Dienstversion für Anforderungen an, die mit dieser gemeinsamen Zugriffssignatur vorgenommen werden.

Informationen dazu, welche Version verwendet wird, wenn Sie Anforderungen über eine Freigegebene Zugriffssignatur ausführen, finden Sie unter Versionsverwaltung für Azure Storage-Dienste.

Informationen dazu, wie sich dieser Parameter auf die Autorisierung von Anforderungen mit einer freigegebenen Zugriffssignatur auswirkt, finden Sie unter Stellvertretungszugriff mit einer freigegebenen Zugriffssignatur.

Flurname Abfrageparameter Beschreibung
signedVersion sv Erforderlich. Unterstützt in Version 2015-04-05 und höher. Die Speicherdienstversion, die verwendet werden soll, um Anforderungen zu autorisieren und zu verarbeiten, die Sie mit dieser gemeinsamen Zugriffssignatur vornehmen. Weitere Informationen finden Sie unter Versionsverwaltung für Azure Storage-Dienste.

Angeben einer IP-Adresse oder eines IP-Bereichs

Ab Version 2015-04-05 gibt das optionale signedIp (sip) eine öffentliche IP-Adresse oder einen Bereich von öffentlichen IP-Adressen an, von denen Anforderungen akzeptiert werden sollen. Wenn die IP-Adresse, aus der die Anforderung stammt, nicht mit der IP-Adresse oder dem Adressbereich übereinstimmt, die im SAS-Token angegeben ist, ist die Anforderung nicht autorisiert. Es werden nur IPv4-Adressen unterstützt.

Wenn Sie einen Bereich von IP-Adressen angeben, denken Sie daran, dass der Bereich inklusive ist. Wenn Sie z. B. sip=198.51.100.0 oder sip=198.51.100.10-198.51.100.20 für die SAS angeben, wird die Anforderung auf diese IP-Adressen beschränkt.

In der folgenden Tabelle wird beschrieben, ob das feld signedIp in ein SAS-Token für ein angegebenes Szenario eingeschlossen werden soll, basierend auf der Clientumgebung und dem Speicherort des Speicherkontos.

Clientumgebung Speicherort des Speicherkontos Empfehlung
Client, der in Azure ausgeführt wird In derselben Region wie der Client Eine SAS, die dem Client in diesem Szenario bereitgestellt wird, sollte keine ausgehende IP-Adresse für das feld signedIp enthalten. Anforderungen, die innerhalb derselben Region erfolgen, in der ein SAS mit einer angegebenen ausgehenden IP-Adresse verwendet wird, schlägt fehl.

Verwenden Sie stattdessen ein virtuelles Azure-Netzwerk, um Netzwerksicherheitseinschränkungen zu verwalten. Anforderungen an Azure Storage innerhalb derselben Region erfolgen immer über eine private IP-Adresse. Weitere Informationen finden Sie unter Konfigurieren von Azure Storage-Firewalls und virtuellen Netzwerken.
Client, der in Azure ausgeführt wird In einer anderen Region als der Client Ein SAS, das dem Client in diesem Szenario bereitgestellt wird, kann eine öffentliche IP-Adresse oder einen Adressbereich für das Feld signedIp enthalten. Eine Anforderung mit der SAS muss von der angegebenen IP-Adresse oder dem angegebenen Adressbereich stammen.
Client, der lokal oder in einer anderen Cloudumgebung ausgeführt wird In einer beliebigen Azure-Region Ein SAS, das dem Client in diesem Szenario bereitgestellt wird, kann eine öffentliche IP-Adresse oder einen Adressbereich für das Feld signedIp enthalten. Eine Anforderung mit der SAS muss von der angegebenen IP-Adresse oder dem angegebenen Adressbereich stammen.

Wenn die Anforderung einen Proxy oder ein Gateway durchläuft, stellen Sie die öffentliche ausgehende IP-Adresse dieses Proxys oder Gateways für das feld signedIp bereit.

Angeben des HTTP-Protokolls

Ab Version 2015-04-05 gibt das optionale signedProtocol (spr) das Protokoll an, das für eine Anforderung mit der SAS zulässig ist. Mögliche Werte sind sowohl HTTPS als auch HTTP (https,http) oder NUR HTTPS (https). Der Standardwert ist https,http. Beachten Sie, dass HTTP nur ein zulässiger Wert ist.

Angeben des Verschlüsselungsbereichs

Mithilfe des Felds signedEncryptionScope im URI können Sie den Verschlüsselungsbereich angeben, den die Clientanwendung verwenden kann. Sie erzwingt die serverseitige Verschlüsselung mit dem angegebenen Verschlüsselungsbereich, wenn Sie Blobs (PUT) mit dem SAS-Token hochladen. Get und HEAD werden nicht wie zuvor eingeschränkt und ausgeführt.

In der folgenden Tabelle wird beschrieben, wie Sie auf einen signierten Verschlüsselungsbereich im URI verweisen:

Flurname Abfrageparameter Beschreibung
signedEncryptionScope ses Wahlfrei. Gibt den Verschlüsselungsbereich an, der zum Verschlüsseln des Anforderungsinhalts verwendet werden soll.

Dieses Feld wird mit Version 2020-12-06 oder höher unterstützt. Wenn Sie die ses vor der unterstützten Version hinzufügen, gibt der Dienst den Fehlerantwortcode 403 (Verboten) zurück.

Wenn Sie den Standardverschlüsselungsbereich für den Container oder dateisystem festlegen, berücksichtigt der ses Abfrageparameter die Containerverschlüsselungsrichtlinie. Wenn ein Konflikt zwischen dem ses Abfrageparameter und x-ms-default-encryption-scope Header besteht und der x-ms-deny-encryption-scope-override-Header auf truefestgelegt ist, gibt der Dienst den Fehlerantwortcode 403 (Verboten) zurück.

Wenn Sie den x-ms-encryption-scope-Header und den ses Abfrageparameter in der PUT-Anforderung bereitstellen, gibt der Dienst den Fehlerantwortcode 400 (ungültige Anforderung) zurück, wenn ein Konflikt vorliegt.

Erstellen der Signaturzeichenfolge

Um die Signaturzeichenfolge für ein Konto-SAS zu erstellen, erstellen Sie zuerst die Zeichenfolgen-zu-Zeichen aus den Feldern, die die Anforderung verfassen, und codieren Sie dann die Zeichenfolge als UTF-8, und berechnen Sie die Signatur mithilfe des HMAC-SHA256 Algorithmus.

Anmerkung

Die Felder, die im Zeichenfolgen-zu-Signieren enthalten sind, müssen URL-decodiert sein.

Verwenden Sie das folgende Format, um das Zeichenfolgen-zu-Signieren für ein Konto SAS zu erstellen:

StringToSign = accountname + "\n" +  
    signedpermissions + "\n" +  
    signedservice + "\n" +  
    signedresourcetype + "\n" +  
    signedstart + "\n" +  
    signedexpiry + "\n" +  
    signedIP + "\n" +  
    signedProtocol + "\n" +  
    signedversion + "\n"  
  

Version 2020-12-06 fügt Unterstützung für das signierte Verschlüsselungsbereichsfeld hinzu. Verwenden Sie das folgende Format, um das Zeichenfolgen-zu-Signieren für ein Konto SAS zu erstellen:

StringToSign = accountname + "\n" +  
    signedpermissions + "\n" +  
    signedservice + "\n" +  
    signedresourcetype + "\n" +  
    signedstart + "\n" +  
    signedexpiry + "\n" +  
    signedIP + "\n" +  
    signedProtocol + "\n" +  
    signedversion + "\n" +
    signedEncryptionScope + "\n"  
  

Konto-SAS-Berechtigungen nach Vorgang

In den Tabellen in den folgenden Abschnitten werden verschiedene APIs für jeden Dienst sowie die signierten Ressourcentypen und signierten Berechtigungen aufgeführt, die für jeden Vorgang unterstützt werden.

BLOB-Dienst

In der folgenden Tabelle sind Blob-Dienstvorgänge aufgeführt und gibt an, welcher signierte Ressourcentyp und welche signierten Berechtigungen angegeben werden sollen, wenn Sie den Zugriff auf diese Vorgänge delegieren.

Operation Signierter Dienst Signierter Ressourcentyp Signierte Berechtigung
Container auflisten Blob (b) Dienst (s) Liste (l)
Abrufen von Blob-Diensteigenschaften Blob (b) Dienst (s) Lesen (r)
Festlegen von Blob-Diensteigenschaften Blob (b) Dienst (s) Schreiben (w)
Abrufen von Blob-Dienststatistiken Blob (b) Dienst (s) Lesen (r)
Container erstellen Blob (b) Container (c) Create(c) oder Write (w)
Containereigenschaften abrufen Blob (b) Container (c) Lesen (r)
Containermetadaten abrufen Blob (b) Container (c) Lesen (r)
Festlegen von Containermetadaten Blob (b) Container (c) Schreiben (w)
Leasecontainer Blob (b) Container (c) Schreiben (w) oder Löschen (d)1
Container löschen Blob (b) Container (c) Löschen (d)1
Suchen von Blobs nach Tags im Container Blob (b) Container (c) Filter (f)
Blobs auflisten Blob (b) Container (c) Liste (l)
Put Blob (create new block blob) Blob (b) Objekt (o) Erstellen (c) oder Schreiben (w)
Put Blob (overwrite existing block blob) Blob (b) Objekt (o) Schreiben (w)
Put Blob (create new page blob) Blob (b) Objekt (o) Erstellen (c) oder Schreiben (w)
Put Blob (overwrite existing page blob) Blob (b) Objekt (o) Schreiben (w)
Blob abrufen Blob (b) Objekt (o) Lesen (r)
Blob-Eigenschaften abrufen Blob (b) Objekt (o) Lesen (r)
Festlegen von BLOB-Eigenschaften Blob (b) Objekt (o) Schreiben (w)
Abrufen von BLOB-Metadaten Blob (b) Objekt (o) Lesen (r)
Festlegen von BLOB-Metadaten Blob (b) Objekt (o) Schreiben (w)
Blob-Tags abrufen Blob (b) Objekt (o) Tags (t)
Festlegen von BLOB-Tags Blob (b) Objekt (o) Tags (t)
Suchen nach Blobs nach Tags Blob (b) Objekt (o) Filter (f)
Blob löschen Blob (b) Objekt (o) Löschen (d)1
Blob-Version löschen Blob (b) Objekt (o) Version (x)2 löschen
Momentaufnahme /Version endgültig löschen Blob (b) Objekt (o) Dauerhafte Löschung (y)3
Lease Blob Blob (b) Objekt (o) Schreiben (w) oder Löschen (d)1
Snapshot Blob Blob (b) Objekt (o) Erstellen (c) oder Schreiben (w)
Blob kopieren (Ziel ist ein neues Blob) Blob (b) Objekt (o) Erstellen (c) oder Schreiben (w)
Blob kopieren (Ziel ist ein vorhandenes Blob) Blob (b) Objekt (o) Schreiben (w)
Inkrementelle Kopie Blob (b) Objekt (o) Erstellen (c) oder Schreiben (w)
Blob abbrechen Blob (b) Objekt (o) Schreiben (w)
Block einfügen Blob (b) Objekt (o) Schreiben (w)
Blockliste ablegen (neuen Blob erstellen) Blob (b) Objekt (o) Schreiben (w)
Blockliste ablegen (vorhandenes Blob aktualisieren) Blob (b) Objekt (o) Schreiben (w)
Blockliste abrufen Blob (b) Objekt (o) Lesen (r)
Seite einfügen Blob (b) Objekt (o) Schreiben (w)
Seitenbereiche abrufen Blob (b) Objekt (o) Lesen (r)
Anfügeblock Blob (b) Objekt (o) Hinzufügen (a) oder Schreiben (w)
Seite löschen Blob (b) Objekt (o) Schreiben (w)

1 Die berechtigung Delete ermöglicht das Unterbrechen einer Lease für ein BLOB oder Container mit Version 2017-07-29 und höher.
2 Die berechtigung Delete Version ermöglicht das Löschen von BLOB-Versionen mit Version 2019-12-12 und höher.
3 Die berechtigung Permanent Delete ermöglicht das dauerhafte Löschen einer BLOB-Momentaufnahme oder -version mit Version 2020-02-10 und höher.

Warteschlangendienst

In der folgenden Tabelle sind Warteschlangendienstvorgänge aufgeführt und gibt an, welcher signierte Ressourcentyp und welche signierten Berechtigungen angegeben werden sollen, wenn Sie den Zugriff auf diese Vorgänge delegieren.

Operation Signierter Dienst Signierter Ressourcentyp Signierte Berechtigung
Abrufen von Warteschlangendiensteigenschaften Warteschlange (q) Dienst (s) Lesen (r)
Festlegen von Warteschlangendiensteigenschaften Warteschlange (q) Dienst (s) Schreiben (w)
Listenwarteschlangen Warteschlange (q) Dienst (s) Liste (l)
Abrufen von Warteschlangendienststatistiken Warteschlange (q) Dienst (s) Lesen (r)
Warteschlange erstellen Warteschlange (q) Container (c) Create(c) oder Write (w)
Warteschlange löschen Warteschlange (q) Container (c) Löschen (d)
Abrufen von Warteschlangenmetadaten Warteschlange (q) Container (c) Lesen (r)
Warteschlangenmetadaten festlegen Warteschlange (q) Container (c) Schreiben (w)
Nachricht ablegen Warteschlange (q) Objekt (o) Hinzufügen (a)
Abrufen von Nachrichten Warteschlange (q) Objekt (o) Prozess (p)
Vorschaunachrichten Warteschlange (q) Objekt (o) Lesen (r)
Nachricht löschen Warteschlange (q) Objekt (o) Prozess (p)
Nachrichten löschen Warteschlange (q) Objekt (o) Löschen (d)
Nachricht aktualisieren Warteschlange (q) Objekt (o) Update (u)

Tabellendienst

Die folgende Tabelle enthält Tabellendienstvorgänge und gibt an, welcher signierte Ressourcentyp und welche signierten Berechtigungen angegeben werden sollen, wenn Sie den Zugriff auf diese Vorgänge delegieren.

Operation Signierter Dienst Signierter Ressourcentyp Signierte Berechtigung
Abrufen von Tabellendiensteigenschaften Tabelle (t) Dienst (s) Lesen (r)
Festlegen von Tabellendiensteigenschaften Tabelle (t) Dienst (s) Schreiben (w)
Abrufen von Tabellendienststatistiken Tabelle (t) Dienst (s) Lesen (r)
Abfragetabellen Tabelle (t) Container (c) Liste (l)
Tabelle erstellen Tabelle (t) Container (c) Erstellen (c) oder Schreiben (w)
Tabelle löschen Tabelle (t) Container (c) Löschen (d)
Abfrageentitäten Tabelle (t) Objekt (o) Lesen (r)
Entität einfügen Tabelle (t) Objekt (o) Hinzufügen (a)
Entität einfügen oder zusammenführen Tabelle (t) Objekt (o) Hinzufügen (a) und Aktualisieren (u)1
Entität einfügen oder ersetzen Tabelle (t) Objekt (o) Hinzufügen (a) und Aktualisieren (u)1
Entität aktualisieren Tabelle (t) Objekt (o) Update (u)
Entität zusammenführen Tabelle (t) Objekt (o) Update (u)
Entität löschen Tabelle (t) Objekt (o) Löschen (d)

1 Berechtigungen zum Hinzufügen und Aktualisieren sind für Upsert-Vorgänge für den Tabellendienst erforderlich.

Dateidienst

Die folgende Tabelle enthält Dateidienstvorgänge und gibt an, welcher signierte Ressourcentyp und welche signierten Berechtigungen angegeben werden sollen, wenn Sie den Zugriff auf diese Vorgänge delegieren.

Operation Signierter Dienst Signierter Ressourcentyp Signierte Berechtigung
Freigaben auflisten Datei (f) Dienst (s) Liste (l)
Abrufen von Dateidiensteigenschaften Datei (f) Dienst (s) Lesen (r)
Festlegen von Dateidiensteigenschaften Datei (f) Dienst (s) Schreiben (w)
Abrufen von Freigabestatistiken Datei (f) Container (c) Lesen (r)
Freigabe erstellen Datei (f) Container (c) Erstellen (c) oder Schreiben (w)
Momentaufnahmefreigabe Datei (f) Container (c) Erstellen (c) oder Schreiben (w)
Abrufen von Freigabeeigenschaften Datei (f) Container (c) Lesen (r)
Festlegen von Freigabeeigenschaften Datei (f) Container (c) Schreiben (w)
Abrufen von Freigabemetadaten Datei (f) Container (c) Lesen (r)
Festlegen von Freigabemetadaten Datei (f) Container (c) Schreiben (w)
Freigabe löschen Datei (f) Container (c) Löschen (d)
Verzeichnisse und Dateien auflisten Datei (f) Container (c) Liste (l)
Verzeichnis erstellen Datei (f) Objekt (o) Erstellen (c) oder Schreiben (w)
Verzeichniseigenschaften abrufen Datei (f) Objekt (o) Lesen (r)
Abrufen von Verzeichnismetadaten Datei (f) Objekt (o) Lesen (r)
Festlegen von Verzeichnismetadaten Datei (f) Objekt (o) Schreiben (w)
Verzeichnis löschen Datei (f) Objekt (o) Löschen (d)
Datei erstellen (neu erstellen) Datei (f) Objekt (o) Erstellen (c) oder Schreiben (w)
Datei erstellen (vorhandenes Überschreiben) Datei (f) Objekt (o) Schreiben (w)
Datei abrufen Datei (f) Objekt (o) Lesen (r)
Dateieigenschaften abrufen Datei (f) Objekt (o) Lesen (r)
Abrufen von Dateimetadaten Datei (f) Objekt (o) Lesen (r)
Festlegen von Dateimetadaten Datei (f) Objekt (o) Schreiben (w)
Datei löschen Datei (f) Objekt (o) Löschen (d)
Datei umbenennen Datei (f) Objekt (o) Löschen (d) oder Schreiben (w)
Bereich platzieren Datei (f) Objekt (o) Schreiben (w)
Bereiche auflisten Datei (f) Objekt (o) Lesen (r)
Abbrechen des Kopierens der Datei Datei (f) Objekt (o) Schreiben (w)
Datei kopieren Datei (f) Objekt (o) Schreiben (w)
Bereich löschen Datei (f) Objekt (o) Schreiben (w)

Beispiel für konto-SAS-URI

Das folgende Beispiel zeigt einen BLOB-Dienst-URI mit einem an ihn angefügten Konto-SAS-Token. Das Konto-SAS-Token stellt Berechtigungen für den Dienst, container und Objekte bereit. Die Tabelle bricht jeden Teil des URI auf:

https://blobsamples.blob.core.windows.net/?sv=2022-11-02&ss=b&srt=sco&sp=rwlc&se=2023-05-24T09:51:36Z&st=2023-05-24T01:51:36Z&spr=https&sig=<signature>
Name SAS-Teil Beschreibung
Ressourcen-URI https://myaccount.blob.core.windows.net/?restype=service&comp=properties Der Dienstendpunkt mit Parametern zum Abrufen von Diensteigenschaften (wenn mit GET aufgerufen) oder festlegen von Diensteigenschaften (wenn mit SET aufgerufen). Basierend auf dem Wert des signierten Dienstfelds (ss) kann diese SAS entweder mit Blob Storage oder Azure Files verwendet werden.
Trennzeichen ? Das Trennzeichen, das vor der Abfragezeichenfolge steht. Das Trennzeichen ist nicht Teil des SAS-Tokens.
Speicherdiensteversion sv=2022-11-02 Für Azure Storage-Dienste, Version 2012-02-12 und höher, gibt dieser Parameter an, welche Version verwendet werden soll.
Dienste ss=b Die SAS gilt für die Blob-Dienste.
Ressourcentypen srt=sco Die SAS gilt für Vorgänge auf Dienstebene, Containerebene und Objektebene.
Erlaubnisse sp=rwlc Die Berechtigungen gewähren Zugriff auf Lese-, Schreib-, Listen- und Erstellungsvorgänge.
Startzeit st=2019-08-01T22%3A18%3A26Z In UTC-Zeit angegeben. Wenn die SAS sofort gültig sein soll, lassen Sie die Startzeit aus.
Ablaufzeit se=2019-08-10T02%3A23%3A26Z In UTC-Zeit angegeben.
Protokoll spr=https Es sind nur Anforderungen zulässig, die HTTPS verwenden.
Unterschrift sig=<signature> Wird verwendet, um den Zugriff auf das Blob zu autorisieren. Die Signatur ist ein HMAC, der mithilfe des SHA256-Algorithmus über eine Zeichenfolge und einen Schlüssel berechnet und dann mithilfe der Base64-Codierung codiert wird.

Da Berechtigungen auf die Dienstebene beschränkt sind, sind barrierefreie Vorgänge mit dieser SAS Get Blob Service Properties (Lesen) und Festlegen von Blob-Diensteigenschaften (Schreiben). Mit einem anderen Ressourcen-URI kann jedoch auch dasselbe SAS-Token verwendet werden, um den Zugriff auf Get Blob Service Stats (lesen) zu delegieren.

Siehe auch