为云存储桶上的用户提供完全访问控制

时间:2014-02-18 10:55:35

标签: google-cloud-storage

我是项目所有者,我可以完全控制存储桶。 我想给另一个用户提供对该存储桶的完全访问控制,但我没有设法做到这一点。 该用户的邮件是an_email_address@gmail.com,他被列为项目的所有者,但如前所述,不能完全控制该桶。

我还试图通过gsutil给他访问:如果是getacl的输出,这是一个片段。

  <EmailAddress>an_email_address@gmail.com</EmailAddress>
                <Name>User Name</Name>
            </Scope>
        <Permission>FULL_CONTROL</Permission>

如果他登录云存储控制台,他就不能更改对象的权限等等。

请您提供一些关于如何继续的提示?

1 个答案:

答案 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