Azure SQL Database の保存時暗号化の確認

Azure SQL Database の保存データ暗号化とキー管理を確認してください。

説明

Transparent Data Encryption(TDE)は、Azure SQL Database のデータファイル、ログ、バックアップを保存時に暗号化します。無効にすると、記憶媒体やデータファイルが流出した際に TDE の保護を受けられません。新しいデータベースでは既定で有効ですが、既存または復元したデータベースの実際の状態を確認してください。

TDE は権限のある SQL クエリを防いだり、接続を暗号化したりするものではありません。データアクセス権限と TLS は別途管理してください。

想定される影響

  • 保存データが流出した際の機密性保護が弱まります。
  • 保存時の暗号化要件を満たさない可能性があります。

対処方法

transparent_data_encryption_enabled = true を設定し、実際の暗号化状態を確認してください。サービス管理キーを使用できますが、組織がカスタマー管理キーを要求する場合は、Azure Key Vault のキー権限とライフサイクルも管理してください。バックアップの保持と復元も検証してください。

例

同じデータベースの TDE 設定を比較します。

変更前

hcl
resource "azurerm_mssql_database" "app_database" {
  name                               = "example-db"
  server_id                          = azurerm_mssql_server.example.id
  transparent_data_encryption_enabled = false
}

TDE を明示的に無効にしています。

変更後

hcl
resource "azurerm_mssql_database" "app_database" {
  name                               = "example-db"
  server_id                          = azurerm_mssql_server.example.id
  transparent_data_encryption_enabled = true
}

TDE を有効にし、データファイル、ログ、バックアップを保存時に保護します。キー管理とデータアクセス制御も維持してください。

参考資料