Поделиться через


Set-AzKeyVaultKeyRotationPolicy

Задает политику смены ключей для указанного ключа в Key Vault.

Синтаксис

Set-AzKeyVaultKeyRotationPolicy
   [-VaultName] <String>
   [-Name] <String>
   [-ExpiresIn <String>]
   [-KeyRotationLifetimeAction <PSKeyRotationLifetimeAction[]>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzKeyVaultKeyRotationPolicy
   [-VaultName] <String>
   [-Name] <String>
   -PolicyPath <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzKeyVaultKeyRotationPolicy
   [-InputObject] <PSKeyVaultKeyIdentityItem>
   [-ExpiresIn <String>]
   [-KeyRotationLifetimeAction <PSKeyRotationLifetimeAction[]>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzKeyVaultKeyRotationPolicy
   [-InputObject] <PSKeyVaultKeyIdentityItem>
   -PolicyPath <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzKeyVaultKeyRotationPolicy
   [-KeyRotationPolicy] <PSKeyRotationPolicy>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Описание

Для этого командлета требуется разрешение на обновление ключа. Она возвращает политику смены ключей для указанного ключа.

Примеры

Пример 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

Эти команды задают политику поворота ключа test-key в ФОРМАТЕ JSON.

Пример 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

Запрос подтверждения перед выполнением командлета.

Тип:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-DefaultProfile

Учетные данные, учетная запись, клиент и подписка, используемые для взаимодействия с Azure.

Тип:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ExpiresIn

Срок действия будет применен к новой версии ключа. Это должно быть не менее 28 дней. Он будет находиться в формате ISO 8601. Примеры: 90 дней: P90D, 3 месяца: P3M, 48 часов: PT48H, 1 год и 10 дней: P1Y10D.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-InputObject

Ключевой объект

Тип:PSKeyVaultKeyIdentityItem
Aliases:Key
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-KeyRotationLifetimeAction

Объект PSKeyRotationLifetimeAction.

Тип:PSKeyRotationLifetimeAction[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-KeyRotationPolicy

Объект PSKeyRotationPolicy.

Тип:PSKeyRotationPolicy
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Name

Имя ключа.

Тип:String
Aliases:KeyName
Position:1
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-PolicyPath

Путь к файлу политики поворота, который содержит определение политики JSON.

Тип:String
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-VaultName

Имя хранилища.

Тип:String
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-WhatIf

Показывает, что произойдет при запуске командлета. Командлет не выполняется.

Тип:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

Входные данные

PSKeyRotationPolicy

PSKeyVaultKeyIdentityItem

Выходные данные

PSKeyRotationPolicy