このエントリは2020/08/29現在の情報に基づいています。将来の機能追加や変更に伴い、記載内容との乖離が発生する可能性があります。
Azure Key Vaultは暗号化キーやシークレットと呼ばれるデータベース接続情報などの機密情報、そして証明書などを管理するためのPaaSコンポーネントであるが、キー コンテナーの削除は論理削除 (soft delete) として扱われるという仕様変更がロールアウトされている。詳細は以下。
すべてのキー コンテナーでの論理的な削除の有効化
Soft-delete will be enabled on all key vaults
https://docs.microsoft.com/azure/key-vault/general/soft-delete-change
Portalの作成画面を見るとこんな感じ。デフォルトでは消去保護は有効にはなっていない。

リテンション(保持)期間はデフォルトでは90日なので、90日間は論理削除の状態で保持される。そのため、論理的に削除されたキー コンテナーの名前を再利用できず、同じ名前でキー コンテナーを作成しようとするとエラーが発生する。
完全に消去するには
パージの操作が許可されているのはサブスクリプションの所有者、もしくは消去アクセス ポリシー アクセス許可が付与されたサービスプリンシパル。サブスクリプション所有者以外に付与する場合は、Portalからキー、シークレット、証明書の特権操作の削除をチェックする。

論理削除されたキー コンテナーをCLIでパージする場合は以下のコマンドを実行する。
# If soft-delete is enabled, purge operation should be performed.
az keyvault purge -n $KV_NAME
az keyvault purge
https://docs.microsoft.com/cli/azure/keyvault?view=azure-cli-latest#az-keyvault-purge
消去保護
消去保護を有効にすると、「削除されたコンテナーを保持する日数」で指定された期間はパージ操作を許可されているサービスプリンシパルでも削除できない。リテンション期間を満了すると自動的にパージされる。
消去保護 / Purge protection
https://docs.microsoft.com/azure/key-vault/general/soft-delete-overview#purge-protection
CLIでキー コンテナー作成時に消去保護を有効化する場合には、--enable-purge-protection
を指定する。

消去保護が有効 | 消去保護が無効 | |
---|---|---|
リテンション期間のパージ | 不可 | サブスクリプション所有者もしくは消去アクセス ポリシー アクセス許可が付与されたサービスプリンシパルでのみ可能 |
リテンション期間後 | 自動的にパージ | 自動的にパージ |