我是项目所有者,我可以完全控制存储桶。 我想给另一个用户提供对该存储桶的完全访问控制,但我没有设法做到这一点。 该用户的邮件是an_email_address@gmail.com,他被列为项目的所有者,但如前所述,不能完全控制该桶。
我还试图通过gsutil给他访问:如果是getacl的输出,这是一个片段。
<EmailAddress>an_email_address@gmail.com</EmailAddress>
<Name>User Name</Name>
</Scope>
<Permission>FULL_CONTROL</Permission>
如果他登录云存储控制台,他就不能更改对象的权限等等。
请您提供一些关于如何继续的提示?
答案 0 :(得分:5)
更改存储区ACL将授予对存储区的完全控制访问权限,这将允许读取,写入和更改存储区元数据。
但是,如果您希望用户完全控制存储桶中的所有对象,则需要更改默认对象ACL,该ACL应用于在该存储桶中创建的对象。要更改默认对象ACL,您应该能够使用如下命令:
gsutil defacl ch -u <email_address>:FC <bucket name>
由于这仅适用于更新默认对象ACL后创建的对象,因此您还需要为要授予其访问权限的任何现有对象设置对象ACL。如果要授予对存储桶中所有对象的访问权限,可以使用如下命令:
gsutil acl ch -u <email_address>:FC <bucket name>/**
如果此存储桶中有许多现有对象,则可以添加-m标志(gsutil -m acl ch ...)以使用多处理来提高速度。
有关ACL如何工作的详细信息,请查看https://developers.google.com/storage/docs/accesscontrol#default