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

Set-AzKeyVaultKeyRotationPolicy

设置 Key Vault 中指定密钥的密钥轮换策略。

语法

ByVaultName (默认值)

Set-AzKeyVaultKeyRotationPolicy
    [-VaultName] <String>
    [-Name] <String>
    [-ExpiresIn <String>]
    [-KeyRotationLifetimeAction <PSKeyRotationLifetimeAction[]>]
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

SetByRotationPolicyFileViaVaultName

Set-AzKeyVaultKeyRotationPolicy
    [-VaultName] <String>
    [-Name] <String>
    -PolicyPath <String>
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ByKeyInputObject

Set-AzKeyVaultKeyRotationPolicy
    [-InputObject] <PSKeyVaultKeyIdentityItem>
    [-ExpiresIn <String>]
    [-KeyRotationLifetimeAction <PSKeyRotationLifetimeAction[]>]
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

SetByRotationPolicyFileViaKeyInputObject

Set-AzKeyVaultKeyRotationPolicy
    [-InputObject] <PSKeyVaultKeyIdentityItem>
    -PolicyPath <String>
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ByKeyRotationPolicyInputObject

Set-AzKeyVaultKeyRotationPolicy
    [-KeyRotationPolicy] <PSKeyRotationPolicy>
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

说明

此 cmdlet 需要密钥更新权限。 它返回指定密钥的密钥轮换策略。

示例

示例 1:按 JSON 文件设置密钥轮换策略

<#
rotation_policy.json
{
    "lifetimeActions": [
      {
        "trigger": {
          "timeAfterCreate": "P18M",
          "timeBeforeExpiry": null
        },
        "action": {
          "type": "Rotate"
        }
      },
      {
        "trigger": {
          "timeBeforeExpiry": "P30D"
        },
        "action": {
          "type": "Notify"
        }
      }
    ],
    "attributes": {
      "expiryTime": "P2Y"
    }
  }
#>
Set-AzKeyVaultKeyRotationPolicy -VaultName test-kv -Name test-key -PolicyPath rotation_policy.json
Id              : https://test-kv.vault.azure.net/keys/test-key/rotationpolicy
VaultName       : test-kv
KeyName         : test-keyAM +00:00
LifetimeActions : {[Action: Notify, TimeAfterCreate: , TimeBeforeExpiry: P30D]}
ExpiresIn       : P2Y
CreatedOn       : 12/10/2021 3:21:51 AM +00:00
UpdatedOn       : 6/9/2022 7:43:27

这些命令按 JSON 文件设置密钥 test-key 的轮换策略。

示例 2:设置密钥轮换策略到期时间

Set-AzKeyVaultKeyRotationPolicy -VaultName test-kv -Name test-key -ExpiresIn P2Y
Id              : https://test-kv.vault.azure.net/keys/test-key/rotationpolicy
VaultName       : test-kv
KeyName         : test-keyAM +00:00
LifetimeActions : {[Action: Notify, TimeAfterCreate: , TimeBeforeExpiry: P30D]}
ExpiresIn       : P2Y
CreatedOn       : 12/10/2021 3:21:51 AM +00:00
UpdatedOn       : 6/9/2022 7:43:27

这些命令设置到期时间将应用于新密钥版本 test-key 2 年。

示例 3:通过管道设置密钥轮换策略

Get-AzKeyVaultKey -VaultName test-kv -Name test-key | Set-AzKeyVaultKeyRotationPolicy -KeyRotationLifetimeAction @{Action = "Rotate"; TimeBeforeExpiry = "P18M"}
Id              : https://test-kv.vault.azure.net/keys/test-key/rotationpolicy
VaultName       : test-kv
KeyName         : test-key
LifetimeActions : {[Action: Rotate, TimeAfterCreate: , TimeBeforeExpiry: P18M], [Action: Notify, TimeAfterCreate: ,
                  TimeBeforeExpiry: P30D]}
ExpiresIn       : P2Y
CreatedOn       : 12/10/2021 3:21:51 AM +00:00
UpdatedOn       : 6/9/2022 8:10:43 AM +00:00

这些命令将到期 test-key 前的持续时间设置为 18 个月。

示例 4:通过 PSKeyRotationPolicy 对象将密钥轮换策略复制到另一个密钥

$policy = Get-AzKeyVaultKeyRotationPolicy -VaultName test-kv -Name test-key1
$policy.KeyName = "test-key2"
$policy | Set-AzKeyVaultKeyRotationPolicy
Id              : https://test-kv.vault.azure.net/keys/test-key2/rotationpolicy
VaultName       : test-kv
KeyName         : test-key2
LifetimeActions : {[Action: Rotate, TimeAfterCreate: , TimeBeforeExpiry: P18M], [Action: Notify, TimeAfterCreate: ,
                  TimeBeforeExpiry: P30D]}
ExpiresIn       : P2Y
CreatedOn       : 6/9/2022 8:26:35 AM +00:00
UpdatedOn       : 6/9/2022 8:26:35 AM +00:00

这些命令将密钥轮换策略 test-key1 复制到密钥 test-key2

参数

-Confirm

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

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False
别名:cf

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-DefaultProfile

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

参数属性

类型:IAzureContextContainer
默认值:None
支持通配符:False
不显示:False
别名:AzContext, AzureRmContext, AzureCredential

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ExpiresIn

expiryTime 将应用于新的密钥版本。 它应至少为 28 天。 它将采用 ISO 8601 格式。 示例:90 天:P90D、3 个月:P3M、48 小时:PT48H、1 年和 10 天:P1Y10D。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

ByVaultName
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False
ByKeyInputObject
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-InputObject

Key 对象

参数属性

类型:PSKeyVaultKeyIdentityItem
默认值:None
支持通配符:False
不显示:False
别名:Key

参数集

ByKeyInputObject
Position:0
必需:True
来自管道的值:True
来自管道的值(按属性名称):False
来自剩余参数的值:False
SetByRotationPolicyFileViaKeyInputObject
Position:0
必需:True
来自管道的值:True
来自管道的值(按属性名称):False
来自剩余参数的值:False

-KeyRotationLifetimeAction

PSKeyRotationLifetimeAction 对象。

参数属性

类型:

PSKeyRotationLifetimeAction[]

默认值:None
支持通配符:False
不显示:False

参数集

ByVaultName
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False
ByKeyInputObject
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-KeyRotationPolicy

PSKeyRotationPolicy 对象。

参数属性

类型:PSKeyRotationPolicy
默认值:None
支持通配符:False
不显示:False

参数集

ByKeyRotationPolicyInputObject
Position:0
必需:True
来自管道的值:True
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Name

密钥名称。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False
别名:键名

参数集

ByVaultName
Position:1
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False
SetByRotationPolicyFileViaVaultName
Position:1
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-PolicyPath

包含 JSON 策略定义的轮换策略文件的路径。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

SetByRotationPolicyFileViaVaultName
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False
SetByRotationPolicyFileViaKeyInputObject
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-VaultName

保管库名称。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

ByVaultName
Position:0
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False
SetByRotationPolicyFileViaVaultName
Position:0
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-WhatIf

显示 cmdlet 运行时会发生什么情况。 命令脚本未运行。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False
别名:无线

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

CommonParameters

此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters

输入

PSKeyRotationPolicy

PSKeyVaultKeyIdentityItem

输出

PSKeyRotationPolicy