Azureファイル共有のアクセスポリシーに過剰な権限がある

ファイル共有のSASに必要な権限だけを付与してください。

説明

Azureファイル共有の保存済みアクセスポリシーは、そのポリシーを参照するSASの権限を定めます。rwdlは、ファイルの読み取り・書き込み・削除と一覧表示を許可します。

想定される影響

トークンが漏えいしたり悪用されたりすると、意図した範囲を超えてファイルが閲覧・変更・削除されるおそれがあります。

対処方法

作業に必要な権限だけを残し、読み取り専用ならrを使ってください。ポリシーの有効期間も必要な範囲に制限してください。

例

以下は読み取り専用に権限を絞る例です。開始と有効期限には有効なUTC時刻を指定し、有効期限が開始より後になるようにしてください。

変更前

hcl
resource "azurerm_storage_share_file" "example" {
  name             = "my-awesome-content.zip"
  storage_share_id = azurerm_storage_share.example.id
  source           = "some-local-file.zip"
}

resource "azurerm_storage_share" "example" {
  name                 = "sharename"
  storage_account_id   = azurerm_storage_account.example.id
  quota                = 50

  acl {
    id = "MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI"

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

変更後

hcl
resource "azurerm_storage_share_file" "example" {
  name             = "my-awesome-content.zip"
  storage_share_id = azurerm_storage_share.example.id
  source           = "some-local-file.zip"
}

resource "azurerm_storage_share" "example" {
  name                 = "sharename"
  storage_account_id   = azurerm_storage_account.example.id
  quota                = 50

  acl {
    id = "MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI"

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

参考資料