Azure Tableのアクセスポリシーに過剰な権限がある

Table SASの権限を、必要なエンティティ操作に限定してください。

説明

Azure Tableの保存済みアクセスポリシーでは、SASにエンティティの照会(r)、追加(a)、更新(u)、削除(d)権限を付与できます。すべてを付与すると、広範な参照と変更が可能になります。

想定される影響

過剰なSAS権限が悪用されると、テーブルのエンティティが閲覧・追加・更新・削除されるおそれがあります。

対処方法

必要な権限だけを付与し、照会専用ならrを使ってください。SASの対象エンティティ範囲と有効期間も制限してください。

例

以下はTableで有効な権限raudをrに絞る例です。実際のアカウントIDと、適切なポリシーの有効期間を指定してください。

変更前

hcl
resource "azurerm_storage_table" "example" {
  name                 = "mytablename"
  storage_account_id   = var.storage_account_id

  acl {
    id = "someid-1XXXXXXXXX"

    access_policy {
      expiry      = var.policy_expiry_utc
      permissions = "raud"
      start       = var.policy_start_utc
    }
  }
}

変更後

hcl
resource "azurerm_storage_table" "example" {
  name                 = "mytablename"
  storage_account_id   = var.storage_account_id

  acl {
    id = "someid-1XXXXXXXXX"

    access_policy {
      expiry      = var.policy_expiry_utc
      permissions = "r"
      start       = var.policy_start_utc
    }
  }
}

参考資料