Festlegen einer Blob-Unveränderlichkeitsrichtlinie

Der Set Blob Immutability Policy Vorgang legt die Unveränderlichkeitsrichtlinie für ein Blob fest. Bei diesem Vorgang wird das ETag des Blobs nicht aktualisiert. Diese API ist ab Version 2020-06-12 verfügbar.

Anforderung

Die Set Blob Immutability Policy-Anforderung kann wie folgt erstellt werden. Es wird empfohlen, HTTPS zu verwenden. Ersetzen Sie myaccount durch den Namen Ihres Speicherkontos und myblob durch den Blobnamen, für den die Unveränderlichkeitsrichtlinie geändert werden soll.

Methode Anforderungs-URI HTTP-Version
PUT https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=immutabilityPolicies HTTP/1.1

URI-Parameter

Sie können im Anforderungs-URI die folgenden zusätzlichen Parameter angeben:

Parameter BESCHREIBUNG
snapshot Optional. Der Momentaufnahme-Parameter ist ein undurchsichtiger DateTime Wert, der, wenn er vorhanden ist, den blob-Momentaufnahme angibt, für den eine Ebene festgelegt werden soll. Weitere Informationen zum Arbeiten mit Blobmomentaufnahmen finden Sie unter Create einer Momentaufnahme eines Blobs.
versionid Optional für Version 2019-12-12 und höher. Der versionid Parameter ist ein undurchsichtiger DateTime Wert, der, wenn er vorhanden ist, die Version des Blobs angibt, auf dem eine Ebene festgelegt werden soll.
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 Namen des Speicherkontos 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-immutability-policy-until-date Erforderlich. Gibt die Aufbewahrung bis zum Datum an, das für das Blob festgelegt werden soll. Dies ist das Datum, bis zu dem das Blob vor Änderungen oder Löschungen geschützt werden kann. Für blob storage oder ein v2-Konto mit allgemeinem Zweck haben gültige Werte RFC1123 Format. Vergangene Zeiten sind ungültig.
x-ms-immutability-policy-mode Optional. Wenn nicht angegeben, ist Unlockedder Standardwert . Gibt den Unveränderlichkeitsrichtlinienmodus an, der für das Blob festgelegt werden soll. Für Blob Storage- oder v2-Konten mit allgemeinem Zweck sind Unlocked/Lockedgültige Werte . unlocked gibt an, dass der Benutzer die Richtlinie ändern kann, indem er die Aufbewahrung bis zum Datum erhöht oder verringert. locked gibt an, dass diese Aktionen verboten sind.
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.
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 auch die Verwendung bedingter Header, um das Blob 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

Keine.

Antwort

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

Statuscode

Bei einem erfolgreichen Vorgang wird der Statuscode 200 (OK) zurückgegeben.

Informationen zu status Codes finden Sie unter Status- und Fehlercodes.

Antwortheader

Die Antwort für diesen Vorgang enthält 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 Gibt die Blob Storage-Version an, die zum Ausführen der Anforderung verwendet wurde. Wird für Anforderungen zurückgegeben, die ab Version 2009-09-19 gestellt wurden.
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.
x-ms-immutability-policy-until-date Gibt das Aufbewahrungsdatum an, das für das Blob festgelegt werden soll. Dies ist das Datum, bis zu dem das Blob vor Änderungen oder Löschungen geschützt werden kann.
x-ms-immutability-policy-mode Gibt den Unveränderlichkeitsrichtlinienmodus an, der für das Blob festgelegt ist. Gültige Werte sind unlocked und locked. Derunlocked Wert gibt an, dass der Benutzer die Richtlinie ändern kann, indem er die Aufbewahrung bis zum Datum erhöht oder verringert, und locked gibt an, dass diese Aktionen verboten sind.

Authorization

Beim Aufrufen eines Datenzugriffsvorgangs in Azure Storage ist eine Autorisierung erforderlich. Sie können den Set Blob Immutability Policy 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 Immutability Policy Vorgang aufzurufen, und die integrierte Azure RBAC-Rolle mit den geringsten Berechtigungen, die diese Aktion enthält:

Weitere Informationen zum Zuweisen von Rollen mithilfe von Azure RBAC finden Sie unter Zuweisen einer Azure-Rolle für den Zugriff auf Blobdaten.

Hinweise

Das Festlegen der Unveränderlichkeitsrichtlinie des Blobs für ein Blobspeicher- oder v2-Konto mit allgemeinem Zweck hat die folgenden Einschränkungen:

  • Das Festlegen einer Unveränderlichkeitsrichtlinie für einen Momentaufnahme oder eine Version ist ab REST-Version 2020-06-12 zulässig.
  • Wenn sich die Unveränderlichkeitsrichtlinie im unlocked Modus befindet, können Benutzer die Aufbewahrung bis zum Datum aktualisieren. Wenn sich die Unveränderlichkeitsrichtlinie im locked Modus befindet, können Benutzer die Aufbewahrung nur bis zum Datum verlängern. Der Richtlinienmodus für Unveränderlichkeit kann von unlocked in lockedgeändert werden, aber nicht von in lockedunlocked.
  • Wenn eine Unveränderlichkeitsrichtlinie für ein Blob vorhanden ist und es auch eine Standardrichtlinie für Unveränderlichkeit für Container oder Konten gibt, hat die Blob-Unveränderlichkeitsrichtlinie Vorrang.
  • Bei einer Unveränderlichkeitsrichtlinie auf Blobebene sind Vorgänge zulässig, PutBlockList/PutBlob/CopyBlob da diese Vorgänge eine neue Version generieren.
  • Wenn sich die Unveränderlichkeitsrichtlinie im unlocked Modus befindet, können Benutzer die Unveränderlichkeitsrichtlinie mithilfe der folgenden API löschen:
Methode Anforderungs-URI HTTP-Version
Delete https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=immutabilityPolicies HTTP/1.1

Hinweis

Weitere Informationen finden Sie unter Unveränderlicher Speicher.

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 Immutability Policy Anforderungen basierend auf dem Speicherkontotyp:

Vorgang Speicherkontotyp Abrechnungskategorie
Festlegen einer Blob-Unveränderlichkeitsrichtlinie Premium, Blockblob
Standard „Allgemein v2“
Standard „Allgemein v1“
Weitere Vorgänge

Weitere Informationen zu Preisen für die angegebene Abrechnungskategorie finden Sie unter Azure Blob Storage Preise.

Weitere Informationen

Autorisieren von Anforderungen an Azure Storage
Status- und Fehlercodes
Blob Storage-Fehlercodes
Festlegen von Timeouts für Blob Storage-Vorgänge