Как настроить разрешение корзины GCS с помощью terraform?

Я хочу установить разрешение для служебной учетной записи sa-email.com в bucket bucket_A.

Как я могу настроить terraform, как показано ниже?

  1. sa-email.com может создать файл в bucket_A
  2. sa-email.com не может удалить файл в bucket_A

1 ответ

Обычно вам нужно добавить ошибку, если вам нужна помощь, а не искать готовое решение.

Вам нужно только разрешение storage.objects.create , вам не нужно указывать, что оно не может удалить его, если у него его нет. Это означает, что роль Storage Object Creator вам подходит здесь , как это описано в документации Google:

Позволяет пользователям создавать объекты. Не дает разрешения на просмотр, удаление или замену объектов. Вам потребуется использовать следующий ресурс:

      resource "google_storage_bucket_iam_member" "bucket_A" {
  bucket = "bucket_A"
  role   = "roles/storage.objectCreator"
  member = var.service_accounts
  depends_on = [google_storage_bucket.bucket_A]
}

Где var.service_account — это ваш sa-email.com, потому что он, вероятно, будет зависеть от среды, иначе вы можете просто добавить его как строку.

Другие вопросы по тегам