如何通过Python添加对特定服务帐户、特定Google存储桶的访问?
当存储桶应该自动创建时,我实现了自动化。如果它不存在,它将确定创建,并应用正确的IAM策略 在如何通过Python添加对特定服务帐户、特定Google存储桶的访问?,python,google-cloud-storage,Python,Google Cloud Storage,当存储桶应该自动创建时,我实现了自动化。如果它不存在,它将确定创建,并应用正确的IAM策略 在gsutil中,我可以通过以下方式完成: gsutil acl ch -u john.doe@example.com:WRITE gs://example-bucket gsutil acl ch -u john.doe@example.READ gs://example-bucket 问题是我不明白如何在Python中实现同样的功能。我浏览了GitHub、StackOverflow和官方文档,却看不
gsutil
中,我可以通过以下方式完成:
gsutil acl ch -u john.doe@example.com:WRITE gs://example-bucket
gsutil acl ch -u john.doe@example.READ gs://example-bucket
问题是我不明白如何在Python中实现同样的功能。我浏览了GitHub、StackOverflow和官方文档,却看不到方向
我创建了一个bucket客户端。创建bucket(bucket\u name)
我认为您应该使用
下面是一个示例代码:
client = storage.Client()
bucket = client.get_bucket(bucket_name)
acl = bucket.acl
# For user
acl.user("me@example.org").grant_read()
acl.all_authenticated().grant_write()
# For service account
acl.service_account("example@example.iam.gserviceaccount.com").grant_read()
acl.save()
print(list(acl))
我认为你应该使用
下面是一个示例代码:
client = storage.Client()
bucket = client.get_bucket(bucket_name)
acl = bucket.acl
# For user
acl.user("me@example.org").grant_read()
acl.all_authenticated().grant_write()
# For service account
acl.service_account("example@example.iam.gserviceaccount.com").grant_read()
acl.save()
print(list(acl))
也许您需要这样的东西:自动将策略分配给任何新创建的bucket可能您需要这样的东西:自动将策略分配给任何新创建的bucket