Festlegen von Blobtags
Der Set Blob Tags
Vorgang legt benutzerdefinierte Tags für das angegebene Blob als mindestens ein Schlüssel-Wert-Paar fest.
Anforderung
Die Set Blob Tags
-Anforderung kann wie folgt erstellt werden. Es wird empfohlen, HTTPS zu verwenden. Ersetzen Sie myaccount durch den Namen Ihres Speicherkontos:
PUT-Methodenanforderungs-URI | 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
Sie können im Anforderungs-URI die folgenden zusätzlichen Parameter angeben:
Parameter | BESCHREIBUNG |
---|---|
versionid |
Optional für Version 2019-12-12 und höher. Der versionid Parameter ist ein undurchsichtiger DateTime Wert, der, wenn vorhanden, die Version des abzurufenden Blobs angibt. |
timeout |
Optional. Der timeout -Parameter wird in Sekunden angegeben. Weitere Informationen finden Sie unter Festlegen von Timeouts für Blob Storage-Vorgänge. |
Anforderungsheader
Die erforderlichen und optionalen Anforderungsheader werden in der folgenden Tabelle beschrieben:
Anforderungsheader | BESCHREIBUNG |
---|---|
Authorization |
Erforderlich. Gibt das Autorisierungsschema, den Kontonamen und die Signatur an. Weitere Informationen finden Sie unter Autorisieren von Anforderungen an 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 an 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 Versionsverwaltung für die Azure-Speicherdienste. |
Content-Length |
Erforderlich. Die Länge des Anforderungsinhalts in Byte. Dieser Header bezieht sich auf die Inhaltslänge des Tagsdokuments, 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. Dieser Header ist dem Anforderungsinhalt und nicht dem Inhalt des Blobs selbst zugeordnet. |
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. Dieser Header ist dem Anforderungsinhalt und nicht dem Inhalt des Blobs selbst zugeordnet. Wenn sowohl als x-ms-content-crc64 auch Content-MD5 Header vorhanden sind, schlägt die Anforderung mit dem Fehlercode 400 (Ungültige Anforderung) fehl. |
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 in der Anforderung keine gültige Lease-ID angegeben wird, schlägt der Vorgang mit status Code 403 (Verboten) fehl. |
x-ms-client-request-id |
Optional. Stellt einen vom Client generierten, undurchsichtigen Wert mit einem Zeichenlimit von 1 Kibibyte (KiB) bereit, der beim Konfigurieren der Protokollierung in den Protokollen aufgezeichnet wird. Es wird dringend empfohlen, diesen Header zu verwenden, um clientseitige Aktivitäten mit Anforderungen zu korrelieren, die der Server empfängt. Weitere Informationen finden Sie unter Überwachen Azure Blob Storage. |
Dieser Vorgang unterstützt den bedingten x-ms-if-tags
Header, um Blobtags nur festzulegen, wenn eine angegebene Bedingung erfüllt ist. Weitere Informationen finden Sie unter Angeben von bedingten Headern für Blob Storage-Vorgänge.
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 Anforderungstext muss ein wohlgeformte UTF-8-XML-Dokument sein und einen Tagsatz enthalten, der die Tags für das Blob darstellt.
Der Tagsatz darf nicht mehr als 10 Tags enthalten. Bei Tagschlüsseln und -werten wird die Groß-/Kleinschreibung beachtet. Tagschlüssel müssen zwischen 1 und 128 Zeichen lang sein, und die 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 (+), Minus (-), Punkt (.), Schrägstrich (/), Doppelpunkt (:), gleich (=) und Unterstrich (_)
Antwort
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.
Weitere Informationen zu status Codes 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 |
Identifiziert eindeutig die Anforderung, die gestellt wurde, und kann zur Problembehandlung für die Anforderung verwendet werden. Weitere Informationen finden Sie unter Problembehandlung bei API-Vorgängen. |
x-ms-version |
Die Blob Storage-Version, die zum Ausführen der Anforderung verwendet wurde. |
Date |
Ein UTC-Datums-/Uhrzeitwert, der vom Dienst generiert wird, der die Uhrzeit angibt, zu der die Antwort initiiert wurde. |
x-ms-client-request-id |
Kann verwendet werden, um Anforderungen und entsprechende Antworten zu behandeln. Der Wert dieses Headers ist gleich dem Wert des x-ms-client-request-id Headers, wenn er in der Anforderung vorhanden ist und der Wert nicht mehr als 1.024 sichtbare ASCII-Zeichen enthält. Wenn der x-ms-client-request-id Header in der Anforderung nicht vorhanden ist, ist er in der Antwort nicht vorhanden. |
Antworttext
Keine.
Authorization
Beim Aufrufen eines Datenzugriffsvorgangs in Azure Storage ist eine Autorisierung erforderlich. Sie können den Set Blob Tags
Vorgang wie unten beschrieben autorisieren.
Wichtig
Microsoft empfiehlt die Verwendung Microsoft Entra ID mit verwalteten Identitäten, um Anforderungen an Azure Storage zu autorisieren. Microsoft Entra ID bietet im Vergleich zur Autorisierung mit gemeinsam genutzten Schlüsseln überlegene Sicherheit und Benutzerfreundlichkeit.
Azure Storage unterstützt die Verwendung von Microsoft Entra ID zum Autorisieren von Anforderungen an Blobdaten. Mit Microsoft Entra ID können Sie die rollenbasierte Zugriffssteuerung (Azure RBAC) von Azure verwenden, um einem Sicherheitsprinzipal Berechtigungen zu erteilen. Der Sicherheitsprinzipal kann ein Benutzer, eine Gruppe, ein Anwendungsdienstprinzipal oder eine verwaltete Azure-Identität sein. Der Sicherheitsprinzipal wird von Microsoft Entra ID authentifiziert, um ein OAuth 2.0-Token zurückzugeben. Das Token kann anschließend zum Autorisieren einer Anforderung an den Blob-Dienst verwendet werden.
Weitere Informationen zur Autorisierung mit Microsoft Entra ID finden Sie unter Autorisieren des Zugriffs auf Blobs mit Microsoft Entra ID.
Berechtigungen
Nachfolgend sind die RBAC-Aktion aufgeführt, die für einen Microsoft Entra Benutzer, Gruppe, verwaltete Identität oder Dienstprinzipal erforderlich ist, um den Set Blob Tags
Vorgang aufzurufen, und die integrierte Azure RBAC-Rolle mit den geringsten Berechtigungen, die diese Aktion enthält:
- Azure RBAC-Aktion:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags/write
- Integrierte Rolle mit den geringsten Berechtigungen:Speicherblobdatenbesitzer
Weitere Informationen zum Zuweisen von Rollen mithilfe von Azure RBAC finden Sie unter Zuweisen einer Azure-Rolle für den Zugriff auf Blobdaten.
Hinweise
Der Set Blob Tags
Vorgang wird in der REST-API-Version 2019-12-12 und höher unterstützt.
Für Konten mit aktiviertem hierarchischen Namespace wird der Set Blob Tags
Vorgang nicht unterstützt, da Blobtags für hierarchische Namespacekonten nicht unterstützt werden.
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>
.
Bei diesem Vorgang wird das ETag oder die Uhrzeit der letzten Änderung des Blobs nicht aktualisiert. Es ist möglich, Tags für ein archiviertes Blob festzulegen.
Der Speicherdienst behält eine starke Konsistenz zwischen einem Blob und seinen Tags bei. Änderungen an Blobtags sind für nachfolgende Get Blob Tags
Vorgänge im Blob sofort sichtbar. Der sekundäre Index ist jedoch letztendlich konsistent. Änderungen an den Tags eines Blobs sind für Vorgänge möglicherweise nicht sofort sichtbar Find Blobs by Tags
.
Wenn eine Anforderung ungültige Tags bereitstellt, gibt Blob Storage status Code 400 (Ungültige Anforderung) zurück.
Abrechnung
Preisanforderungen können von Clients stammen, die Blob Storage-APIs verwenden, entweder direkt über die Blob Storage-REST-API oder aus einer Azure Storage-Clientbibliothek. Für diese Anforderungen fallen Gebühren pro Transaktion an. Die Art der Transaktion wirkt sich auf die Belastung des Kontos aus. Beispielsweise werden Lesetransaktionen in eine andere Abrechnungskategorie als das Schreiben von Transaktionen angewendet. Die folgende Tabelle zeigt die Abrechnungskategorie für Set Blob Tags
Anforderungen basierend auf dem Speicherkontotyp:
Vorgang | Speicherkontotyp | Abrechnungskategorie |
---|---|---|
Festlegen von Blobtags | Premium, Blockblob Standard „Allgemein v2“ |
Weitere Vorgänge |
Festlegen von Blobtags | Standard „Allgemein v1“ | Schreibvorgänge |
Weitere Informationen zu Preisen für die angegebene Abrechnungskategorie finden Sie unter Azure Blob Storage Preise.
Weitere Informationen
Verwalten und Suchen von Blob Storage-Daten mit Blobindextags
Autorisieren von Anforderungen an Azure Storage
Status- und Fehlercodes
Blob Storage-Fehlercodes