你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Blob Containers - Create Or Update Immutability Policy

创建或更新未锁定的不可变性策略。 如果给出了 ETag,则接受 If-Match 中的 ETag,但此作不需要。

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default?api-version=2025-06-01

URI 参数

名称 必需 类型 说明
accountName
path True

string

minLength: 3
maxLength: 24
pattern: ^[a-z0-9]+$

指定资源组中的存储帐户的名称。 存储帐户名称长度必须为 3 到 24 个字符,并且只能使用数字和小写字母。

containerName
path True

string

minLength: 3
maxLength: 63

指定存储帐户中 blob 容器的名称。 Blob 容器名称的长度必须介于 3 到 63 个字符之间,并且仅使用数字、小写字母和短划线 (-)。 每个破折号 (-) 字符必须紧接在前面和后面跟一个字母或数字。

resourceGroupName
path True

string

minLength: 1
maxLength: 90

资源组的名称。 此名称不区分大小写。

subscriptionId
path True

string (uuid)

目标订阅的 ID。 该值必须是 UUID。

api-version
query True

string

minLength: 1

要用于此操作的 API 版本。

请求头

名称 必需 类型 说明
If-Match

string

对于所有更新作,必须将要更新的不可变性策略的实体状态 (ETag) 版本返回到服务器。 ETag 值必须包含服务返回的前导和尾随双引号。

请求正文

名称 类型 说明
properties.allowProtectedAppendWrites

boolean

只能更改已解锁的基于时间的保留策略的属性。 启用后,可以将新块写入追加 blob,同时保持不可变性保护和符合性。 只能添加新块,任何现有块都无法修改或删除。 不能使用 ExtendImmutabilityPolicy API 更改此属性。

properties.allowProtectedAppendWritesAll

boolean

只能更改已解锁的基于时间的保留策略的属性。 启用后,新块可以同时写入“追加 Blob 和 Bock Blob”,同时保持不可变性保护和符合性。 只能添加新块,任何现有块都无法修改或删除。 不能使用 ExtendImmutabilityPolicy API 更改此属性。 “allowProtectedAppendWrites”和“allowProtectedAppendWritesAll”属性互斥。

properties.immutabilityPeriodSinceCreationInDays

integer (int32)

自创建策略以来容器中 Blob 的不可变性时间段(以天为单位)。

响应

名称 类型 说明
200 OK

ImmutabilityPolicy

请求已成功。

标头

ETag: string

Other Status Codes

ErrorResponse

意外错误响应。

安全性

azure_auth

Azure Active Directory OAuth2 流。

类型: oauth2
流向: implicit
授权 URL: https://login.microsoftonline.com/common/oauth2/authorize

作用域

名称 说明
user_impersonation 模拟用户帐户

示例

CreateOrUpdateImmutabilityPolicy
CreateOrUpdateImmutabilityPolicyWithAllowProtectedAppendWritesAll

CreateOrUpdateImmutabilityPolicy

示例请求

PUT https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/res1782/providers/Microsoft.Storage/storageAccounts/sto7069/blobServices/default/containers/container6397/immutabilityPolicies/default?api-version=2025-06-01

{
  "properties": {
    "allowProtectedAppendWrites": true,
    "immutabilityPeriodSinceCreationInDays": 3
  }
}

示例响应

{
  "name": "default",
  "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies",
  "etag": "\"8d59f830cb130e5\"",
  "id": "/subscriptions/{subscription-id}/resourceGroups/res1782/providers/Microsoft.Storage/storageAccounts/sto7069/blobServices/default/containers/container6397/immutabilityPolicies/default",
  "properties": {
    "allowProtectedAppendWrites": true,
    "immutabilityPeriodSinceCreationInDays": 3,
    "state": "Unlocked"
  }
}

CreateOrUpdateImmutabilityPolicyWithAllowProtectedAppendWritesAll

示例请求

PUT https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/res1782/providers/Microsoft.Storage/storageAccounts/sto7069/blobServices/default/containers/container6397/immutabilityPolicies/default?api-version=2025-06-01

{
  "properties": {
    "allowProtectedAppendWritesAll": true,
    "immutabilityPeriodSinceCreationInDays": 3
  }
}

示例响应

{
  "name": "default",
  "type": "Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies",
  "etag": "\"8d59f830cb130e5\"",
  "id": "/subscriptions/{subscription-id}/resourceGroups/res1782/providers/Microsoft.Storage/storageAccounts/sto7069/blobServices/default/containers/container6397/immutabilityPolicies/default",
  "properties": {
    "allowProtectedAppendWritesAll": true,
    "immutabilityPeriodSinceCreationInDays": 3,
    "state": "Unlocked"
  }
}

定义

名称 说明
ErrorResponse

存储资源提供程序的错误响应。

ErrorResponseBody

错误响应正文协定。

ImmutabilityPolicy

Blob 容器的 ImmutabilityPolicy 属性,包括 Id、资源名称、资源类型、Etag。

ImmutabilityPolicyState

Blob 容器的 ImmutabilityPolicy 状态,可能的值包括:已锁定和已解锁。

ErrorResponse

存储资源提供程序的错误响应。

名称 类型 说明
error

ErrorResponseBody

Azure 存储资源提供程序错误响应正文。

ErrorResponseBody

错误响应正文协定。

名称 类型 说明
code

string

错误的标识符。 代码是固定的,旨在以编程方式使用。

message

string

描述错误的消息,旨在适合在用户界面中显示。

ImmutabilityPolicy

Blob 容器的 ImmutabilityPolicy 属性,包括 Id、资源名称、资源类型、Etag。

名称 类型 说明
etag

string

资源 Etag。

id

string

资源的完全限定资源 ID。 示例 - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

资源的名称

properties.allowProtectedAppendWrites

boolean

只能更改已解锁的基于时间的保留策略的属性。 启用后,可以将新块写入追加 blob,同时保持不可变性保护和符合性。 只能添加新块,任何现有块都无法修改或删除。 不能使用 ExtendImmutabilityPolicy API 更改此属性。

properties.allowProtectedAppendWritesAll

boolean

只能更改已解锁的基于时间的保留策略的属性。 启用后,新块可以同时写入“追加 Blob 和 Bock Blob”,同时保持不可变性保护和符合性。 只能添加新块,任何现有块都无法修改或删除。 不能使用 ExtendImmutabilityPolicy API 更改此属性。 “allowProtectedAppendWrites”和“allowProtectedAppendWritesAll”属性互斥。

properties.immutabilityPeriodSinceCreationInDays

integer (int32)

自创建策略以来容器中 Blob 的不可变性时间段(以天为单位)。

properties.state

ImmutabilityPolicyState

Blob 容器的 ImmutabilityPolicy 状态,可能的值包括:已锁定和已解锁。

type

string

资源类型。 例如“Microsoft.Compute/virtualMachines”或“Microsoft.Storage/storageAccounts”

ImmutabilityPolicyState

Blob 容器的 ImmutabilityPolicy 状态,可能的值包括:已锁定和已解锁。

说明
Locked
Unlocked