Festlegen von Blobtags

Der Set Blob Tags Vorgang legt benutzerdefinierte Tags für das angegebene Blob als ein oder mehrere Schlüssel-Wert-Paare fest.

Anforderung

Die Set Blob Tags-Anforderung kann wie folgt erstellt werden. HTTPS wird empfohlen. Ersetzen Sie myaccount durch den Namen Ihres Speicherkontos:

Anforderungs-URI für PUT-Methode HTTP-Version
https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=tags

https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=tags&versionid=<DateTime>
HTTP/1.1

URI-Parameter

Im Anforderungs-URI können die folgenden zusätzlichen Parameter angegeben werden.

Parameter Beschreibung
versionid Optional für die Versionen 2019-12-12 und neuer. Der parameter versionid ist ein nicht transparenter Wert, der, falls vorhanden, die Version des DateTime abzurufenden Blobs angibt.
timeout Optional. Der timeout-Parameter wird in Sekunden angegeben. Weitere Informationen finden Sie unter Festlegen von Timeouts für Blobdienstvorgänge.

Anforderungsheader

In der folgenden Tabelle werden erforderliche und optionale Anforderungsheader beschrieben.

Anforderungsheader BESCHREIBUNG
Authorization Erforderlich. Gibt das Autorisierungsschema, den Kontonamen und die Signatur an. Weitere Informationen finden Sie unter Autorisieren von Anforderungen für Azure Storage.
Date oder x-ms-date Erforderlich. Gibt die koordinierte Weltzeit (Coordinated Universal Time, UTC) für die Anforderung an. Weitere Informationen finden Sie unter Autorisieren von Anforderungen für Azure Storage.
x-ms-version Erforderlich für alle autorisierten Anforderungen. Gibt die Version des für die Anforderung zu verwendenden Vorgangs an. Weitere Informationen finden Sie unter Versionsing for the Azure Storage Services.
Content-Length Erforderlich. Die Länge des Anforderungsinhalts in Byte. Beachten Sie, dass sich dieser Header auf die Inhaltslänge des Tagsdokuments bezieht, nicht auf das Blob selbst.
Content-Type Erforderlich. Der Wert dieses Headers sollte application/xml sein. charset=UTF-8.
Content-MD5 Optional. Ein MD5-Hash des Anforderungsinhalts. Mithilfe des Hash wird die Integrität des Anforderungsinhalts während der Übertragung überprüft. Wenn die beiden Hashs nicht übereinstimmen, schlägt der Vorgang mit Fehlercode 400 (Ungültige Anforderung) fehl.

Beachten Sie, dass dieser Header dem Anforderungsinhalt und nicht dem Inhalt des BLOB selbst zugeordnet ist.
x-ms-content-crc64 Optional. Ein CRC64-Hash des Anforderungsinhalts. Mithilfe des Hash wird die Integrität des Anforderungsinhalts während der Übertragung überprüft. Wenn die beiden Hashs nicht übereinstimmen, schlägt der Vorgang mit Fehlercode 400 (Ungültige Anforderung) fehl.

Beachten Sie, dass dieser Header dem Anforderungsinhalt und nicht dem Inhalt des BLOB selbst zugeordnet ist.

Wenn sowohl - als auch -Header vorhanden sind, tritt bei der Anforderung ein Fehler mit Content-MD5 x-ms-content-crc64 dem Fehlercode 400 (Bad Request) auf.
x-ms-lease-id:<ID> Erforderlich, wenn das BLOB über eine aktive Lease verfügt.

Um diesen Vorgang für ein BLOB mit einer aktiven Lease auszuführen, geben Sie die gültige Lease-ID für diesen Header an. Wenn für die Anforderung keine gültige Lease-ID angegeben wird, schlägt der Vorgang mit dem Statuscode 403 (Verboten) fehl.
x-ms-client-request-id Optional. Stellt einen vom Client generierten, nicht transparenten Wert mit einem Zeichenlimit von 1 KiB zur Folge, das in den Analyseprotokollen aufgezeichnet wird, wenn die Protokollierung der Speicheranalyse aktiviert ist. Es wird empfohlen, diesen Header für das Korrelieren clientseitiger Aktivitäten mit vom Server empfangenen Anforderungen zu verwenden. Weitere Informationen finden Sie unter About Storage Analytics Logging und Azure Logging: Using Logs to Track Storage Requests.

Dieser Vorgang unterstützt den x-ms-if-tags bedingten Header, um Blobtags nur festzulegen, wenn eine angegebene Bedingung erfüllt ist. Weitere Informationen finden Sie unter Specifying Conditional Headers for Blob Service Operations (Angeben von bedingten Headern für Vorgänge des Blob-Diensts).

Anforderungstext

Der Anforderungstext weist das folgende Format auf:

<?xml version="1.0" encoding="utf-8"?>  
<Tags>  
    <TagSet>  
        <Tag>  
            <Key>tag-name-1</Key>  
            <Value>tag-value-1</Value>  
        </Tag>  
        <Tag>  
            <Key>tag-name-2</Key>  
            <Value>tag-value-2</Value>  
        </Tag>  
    </TagSet>  
</Tags>  

Der Anforderungskörper muss ein wohlgeformtes UTF-8-XML-Dokument sein, das einen Tagsatz enthält, der die Tags für das Blob darstellt.

Der Tagsatz kann mindestens 10 Tags enthalten. Bei Tagschlüsseln und -werten wird die Kleinschreibung beachtet. Tagschlüssel müssen zwischen 1 und 128 Zeichen lang sein, und Tagwerte müssen zwischen 0 und 256 Zeichen lang sein. Gültige Tagschlüssel- und Wertzeichen sind:

  • Klein- und Großbuchstaben (a-z, A-Z)
  • Ziffern (0-9)
  • Ein Leerzeichen ( )
  • Plus (+), Minuszeichen (-), Punkt (.), Solidus (/), Doppelpunkt (:), gleich (=) und Unterstrich (_)

Response

Die Antwort enthält den HTTP-Statuscode und einen Satz von Antwortheadern.

Statuscode

Bei einem erfolgreichen Vorgang wird der Statuscode 204 (Kein Inhalt) zurückgegeben.

Informationen zu Statuscodes finden Sie unter Status- und Fehlercodes.

Antwortheader

Die Antwort für diesen Vorgang umfasst die folgenden Header. Die Antwort kann außerdem weitere HTTP-Standardheader enthalten. Alle Standardheader entsprechen der HTTP/1.1-Protokollspezifikation.

Antwortheader BESCHREIBUNG
x-ms-request-id Dieser Header identifiziert die erfolgte Anforderung eindeutig und kann für die Problembehandlung der Anforderung verwendet werden. Weitere Informationen finden Sie unter Problembehandlung bei API-Vorgängen.
x-ms-version Gibt die Version des Blob-Diensts an, der zum Ausführen der Abfrage verwendet wird.
Date Ein vom Dienst generierter Datums-/Uhrzeitwert in UTC, der angibt, wann die Antwort initiiert wurde.
x-ms-client-request-id Dieser Header kann zur Problembehandlung von Anforderungen und entsprechenden Antworten verwendet werden. Der Wert dieses Headers entspricht dem Wert des Headers, wenn er in der Anforderung vorhanden ist und der Wert mindestens x-ms-client-request-id 1.024 sichtbare ASCII-Zeichen beträgt. Wenn der x-ms-client-request-id Header in der Anforderung nicht vorhanden ist, ist dieser Header in der Antwort nicht vorhanden.

Antworttext

Keine.

Autorisierung

Dieser Vorgang kann vom Kontobesitzer und von jedem Benutzer mit einem Shared Access Signature aufgerufen werden, der über die Berechtigung für die Tags des Blobs t (sas-Berechtigung) verfügt.

Auch RBAC-Benutzer mit der Berechtigung Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags/write können diesen Vorgang durchführen.

Hinweise

Der Set Blob Tags Vorgang wird ab REST-API-Version 2019-12-12 unterstützt.

Der Set Blob Tags Vorgang überschreibt alle vorhandenen Tags im Blob. Um alle Tags aus einem Blob zu entfernen, senden Sie eine Set Blob Tags Anforderung mit einem leeren <TagSet> .

Dieser Vorgang aktualisiert weder das ETag noch den Zeitpunkt der letzten Änderung des Blobs. Es ist möglich, Tags für ein archiviertes Blob festlegen.

Der Speicherdienst behält eine starke Konsistenz zwischen einem Blob und seinen Tags bei. Änderungen an Blobtags sind für nachfolgende Vorgänge im Blob sofort Get Blob Tags sichtbar. Der sekundäre Index ist jedoch letztlich konsistent. Änderungen an den Tags eines Blobs sind für Vorgänge möglicherweise nicht sofort Find Blobs by Tags sichtbar.

Wenn eine Anforderung ungültige Tags bereitstellt, gibt der Blob-Dienst den Statuscode 400 (Ungültige Anforderung) zurück.

Weitere Informationen

Verwalten und Suchen von Daten in Azure Blob Storage mit dem Blobindex
Autorisieren von Anforderungen an Azure Storage
Status- und Fehlercodes
Blob-Dienst-Fehlercodes