IAM / ACL政策,允许每个用户的Google Cloud Storage对象所有权

时间:2019-10-30 08:30:57

标签: google-cloud-platform google-cloud-storage

我有一个Google Cloud Storage存储桶,并且有以下用例:

  • 用户A需要能够创建对象,并且能够删除这些对象,并且仅 这些对象。
  • 用户B需要能够创建对象,并且能够删除这些对象,并且仅 这些对象。

是否可以通过IAM和/或ACL允许和执行?

1 个答案:

答案 0 :(得分:0)

不幸的是,这是不可能的。删除GCS存储桶中的对象所需的storage.objects.delete权限允许删除任何对象,无论用户是否尝试通过ACL拥有该对象。

我看到的解决方法是,通过为每个用户授予在其中创建/删除对象所需的权限,或者为他们赋予角色{{3},分别向用户A和用户B访问两个不同的GCS存储桶},即:

  • 给用户A角色roles/storage.objectAdmin到存储桶A中 存储桶权限标签。

  • 在存储桶权限标签中为用户B授予存储桶B的角色roles/storage.objectAdmin

roles/storage.objectAdmin是如何执行此操作的示例。