Azure Blob コンテナーの論理的な削除の保持期間の確認

Azure Blob コンテナーの論理的な削除と十分な保持期間を設定し、コンテナー全体の削除に備えてください。

説明

コンテナーの論理的な削除は、削除したコンテナーとその内容を一定期間復旧できる状態で保持します。コンテナーの削除は多数の Blob に一度に影響するため、専用の復旧保護が重要です。

この機能はコンテナー全体を復元します。コンテナーが残っている状態で削除された個別の Blob には、Blob の論理的な削除やバージョン管理が必要です。ストレージアカウント自体の削除も別途防止する必要があります。

想定される影響

  • 削除されたコンテナーの復旧期間を過ぎると、多数の Blob を同時に失う可能性があります。
  • 大量のデータをバックアップから復元する場合、費用の増加やサービス復旧の遅れにつながる可能性があります。

対処方法

  • blob_properties.container_delete_retention_policy の days を、削除の発見と対応に必要な時間に合わせて設定してください。
  • 保持費用を確認し、実際のコンテナー復元を試験してください。元の名前で新しいコンテナーを作ると、復元できなくなる場合があります。
  • 個別の Blob の論理的な削除、必要なバージョン管理やバックアップも構成し、削除権限を制限してください。

例

5 日と 49 日のコンテナー保持期間を比較する例です。5 日でも復旧期間はありますが、Microsoft は最低 7 日を推奨し、運用に応じてさらに長く設定できます。既存のアカウントを変更する際はほかの属性を維持し、Terraform の計画を確認してください。

変更前

hcl
resource "azurerm_storage_account" "storage_account" {
  name                     = "appcontainerstore"
  resource_group_name      = azurerm_resource_group.example.name
  location                 = azurerm_resource_group.example.location
  account_tier             = "Standard"
  account_replication_type = "GRS"

  blob_properties {
    container_delete_retention_policy {
      days = 5
    }
  }
}

コンテナーの削除後 5 日間は復旧できます。発見と対応に必要な時間より短いと、復旧の機会を失う可能性があります。

変更後

hcl
resource "azurerm_storage_account" "storage_account" {
  name                     = "protectedstore01"
  resource_group_name      = "testRG"
  location                 = "northeurope"
  account_tier             = "Premium"
  account_replication_type = "LRS"

  blob_properties {
    container_delete_retention_policy {
      days = 49
    }
  }
}

コンテナーを復旧できる期間を 49 日に延ばしています。データの重要性と保持費用に合わせて調整してください。

参考資料