Операция ‘DeletedVaultPurge’ не разрешена — попытка очистки хранилища ключей Azure

#azure #azure-powershell #azure-keyvault #azure-cli

#azure #azure-powershell #azure-keyvault #azure-cli

Вопрос:

Я использую свою личную учетную запись Azure и подписку Visual Studio Azure, где я являюсь глобальным администратором. При попытке очистить хранилище ключей Azure, удаленное программным путем, я получаю следующую ошибку.

Использование Azure Power Shell:

Удалить-AzKeyVault: операция ‘DeletedVaultPurge’ не разрешена.

Использование Azure CLI:

Ошибка проверки: (метод не разрешен) Операция ‘DeletedVaultPurge’ не разрешена.

Похоже, есть разрешение, которого у меня нет, хотя я глобальный администратор. Итак, что мне нужно сделать, чтобы очистить хранилища ключей, удаленные программно?

Вот шаги в Azure Power Shell (4.7.0), которые я могу использовать для воспроизведения ошибки:

Сначала я создаю хранилище ключей:

 New-AzKeyVault -Name $keyVaultName -ResourceGroupName $resourceGroupName -Location $location -EnablePurgeProtection
  

Затем я удаляю его.

 Remove-AzKeyVault -Name $keyVaultName -ResourceGroupName $resourceGroupName
  

Затем попробуйте очистить хранилище ключей с программным удалением:

 Remove-AzKeyVault -Name $keyVaultName -Location $location -InRemovedState -Force
  

Удалить-AzKeyVault: операция ‘DeletedVaultPurge’ не разрешена.

Ответ №1:

Причина в том, что у вас есть enabled the Purge protection при создании keyvault.

После Purge protection is enabled того, как она удалена, ее удаление запрещено. Пожалуйста, обратитесь к документу для получения более подробной информации. Я просто вставил часть документа, как показано ниже:

Когда включена защита от очистки, хранилище или объект в удаленном состоянии не могут быть удалены, пока не истечет срок хранения.

И, пожалуйста, также обратите внимание, что, если защита от очистки включена, вы не можете отключить ее. Поэтому во время создания хранилища ключей убедитесь Purge protection is disabled , что, затем повторите попытку команды.

Комментарии:

1. Спасибо @ivanyang! Меня смутил параметр -EnablePurgeProtection. По какой-то причине я ошибочно подумал, что он включил soft-delete.

2. не могли бы вы объяснить, как выглядит операция POST для постоянной очистки? эта ссылка на документ подразумевает, что при включенной защите от очистки владелец подписки все равно может выполнить полную очистку и не допустить, чтобы это задерживалось. Разрешенная очистка

3. @ShawnCicoria, в разделе Разрешенная очистка -> Исключения документа говорится, что «Когда флаг —enable-purge-protection включен в самом хранилище. В этом случае хранилище ключей будет ждать 90 дней с момента, когда исходный секретный объект был помечен для удаления, чтобы окончательно удалить объект.».