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

Set-AzRmStorageContainerImmutabilityPolicy

创建或更新存储 Blob 容器的不可变性Policy

语法

Set-AzRmStorageContainerImmutabilityPolicy
   [-ResourceGroupName] <String>
   [-StorageAccountName] <String>
   -ContainerName <String>
   [-ImmutabilityPeriod <Int32>]
   [-AllowProtectedAppendWriteAll <Boolean>]
   [-AllowProtectedAppendWrite <Boolean>]
   [-Etag <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzRmStorageContainerImmutabilityPolicy
   [-ResourceGroupName] <String>
   [-StorageAccountName] <String>
   -ContainerName <String>
   -ImmutabilityPeriod <Int32>
   -Etag <String>
   [-ExtendPolicy]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzRmStorageContainerImmutabilityPolicy
   -ContainerName <String>
   -StorageAccount <PSStorageAccount>
   [-ImmutabilityPeriod <Int32>]
   [-AllowProtectedAppendWriteAll <Boolean>]
   [-AllowProtectedAppendWrite <Boolean>]
   [-Etag <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzRmStorageContainerImmutabilityPolicy
   -ContainerName <String>
   -StorageAccount <PSStorageAccount>
   -ImmutabilityPeriod <Int32>
   -Etag <String>
   [-ExtendPolicy]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzRmStorageContainerImmutabilityPolicy
   -Container <PSContainer>
   [-ImmutabilityPeriod <Int32>]
   [-AllowProtectedAppendWriteAll <Boolean>]
   [-AllowProtectedAppendWrite <Boolean>]
   [-Etag <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzRmStorageContainerImmutabilityPolicy
   -Container <PSContainer>
   -ImmutabilityPeriod <Int32>
   -Etag <String>
   [-ExtendPolicy]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzRmStorageContainerImmutabilityPolicy
   [-InputObject] <PSImmutabilityPolicy>
   [-ImmutabilityPeriod <Int32>]
   [-AllowProtectedAppendWriteAll <Boolean>]
   [-AllowProtectedAppendWrite <Boolean>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzRmStorageContainerImmutabilityPolicy
   [-InputObject] <PSImmutabilityPolicy>
   -ImmutabilityPeriod <Int32>
   [-ExtendPolicy]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

说明

Set-AzRmStorageContainerImmutabilityPolicy cmdlet 创建或更新存储 Blob 容器的 ImmutabilityPolicy

示例

示例 1:使用存储帐户名称和容器名称创建或更新存储 Blob 容器的 ImmutabilityPolicy

Set-AzRmStorageContainerImmutabilityPolicy -ResourceGroupName "myResourceGroup" -AccountName "myStorageAccount" -ContainerName "myContainer" -ImmutabilityPeriod 10

此命令使用存储帐户名称和容器名称创建或更新存储 Blob 容器的不可变性Policy。

示例 2:使用存储帐户对象扩展存储 Blob 容器的 ImmutabilityPolicy

$accountObject = Get-AzStorageAccount -ResourceGroupName "myResourceGroup" -AccountName "myStorageAccount"
$policy = Get-AzRmStorageContainerImmutabilityPolicy -StorageAccount $accountObject -ContainerName "myContainer"
Set-AzRmStorageContainerImmutabilityPolicy -StorageAccount $accountObject -ContainerName "myContainer" -ImmutabilityPeriod 20 -Etag $policy.Etag -ExtendPolicy

此命令使用存储帐户对象扩展存储 Blob 容器的 ImmutabilityPolicy。 扩展 ImmutabilityPolicy 只能在锁定 ImmutabilityPolicy 后运行。

示例 3:更新存储 Blob 容器的 ImmutabilityPolicy

$containerObject = Get-AzRmStorageContainer -ResourceGroupName "myResourceGroup" -AccountName "myStorageAccount" -Name "myContainer"
$policy = Set-AzRmStorageContainerImmutabilityPolicy -Container $containerObject -ImmutabilityPeriod 12
$policy = Set-AzRmStorageContainerImmutabilityPolicy -Container $containerObject -ImmutabilityPeriod 9 -Etag $policy.Etag
$policy = Set-AzRmStorageContainerImmutabilityPolicy -Container $containerObject -AllowProtectedAppendWrite $true
$policy = Set-AzRmStorageContainerImmutabilityPolicy -Container $containerObject -AllowProtectedAppendWrite $false -AllowProtectedAppendWriteAll $true

此命令更新存储 Blob 容器的 ImmutabilityPolicy,其存储容器对象为 3 次:首先以 ImmutabilityPeriod 12 天没有 etag,然后使用 etag 更新到 ImmutabilityPeriod 9 天,然后启用 AllowProtectedAppendWrite,最后启用 AllowProtectedAppendWriteAll。

示例 4:使用 ImmutabilityPolicy 对象扩展存储 Blob 容器的 ImmutabilityPolicy

Get-AzRmStorageContainerImmutabilityPolicy -ResourceGroupName "myResourceGroup" -AccountName "myStorageAccount" -ContainerName "myContainer" | Set-AzRmStorageContainerImmutabilityPolicy -ImmutabilityPeriod 15 -ExtendPolicy

此命令使用 ImmutabilityPolicy 对象扩展存储 blob 容器的 ImmutabilityPolicy。 扩展 ImmutabilityPolicy 只能在锁定 ImmutabilityPolicy 后运行。

参数

-AllowProtectedAppendWrite

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

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-AllowProtectedAppendWriteAll

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

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Confirm

提示你在运行 cmdlet 之前进行确认。

类型:SwitchParameter
别名:cf
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Container

存储容器对象

类型:PSContainer
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-ContainerName

容器名

类型:String
别名:N
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-DefaultProfile

用于与 Azure 通信的凭据、帐户、租户和订阅。

类型:IAzureContextContainer
别名:AzContext, AzureRmContext, AzureCredential
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Etag

不可变性策略 etag。 如果未指定 -ExtendPolicy,则 Etag 是可选的;否则需要 Etag。

类型:String
别名:IfMatch
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-ExtendPolicy

指示 ExtendPolicy 以扩展现有 ImmutabilityPolicy。 锁定 ImmutabilityPolicy 后,它只能进行扩展。

类型:SwitchParameter
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-ImmutabilityPeriod

自创建以来的不可变性时期(以天为单位)。

类型:Int32
别名:ImmutabilityPeriodSinceCreationInDays
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-InputObject

容器名

类型:PSImmutabilityPolicy
别名:ImmutabilityPolicy
Position:0
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-ResourceGroupName

资源组名称。

类型:String
Position:0
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-StorageAccount

存储帐户对象

类型:PSStorageAccount
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-StorageAccountName

存储帐户名称。

类型:String
别名:AccountName
Position:1
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-WhatIf

显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。

类型:SwitchParameter
别名:wi
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

输入

String

PSStorageAccount

PSContainer

PSImmutabilityPolicy

输出

PSImmutabilityPolicy