我正在尝试找出一种方法来允许 GCP 用户列出存储桶,但仅限于用户具有权限的存储桶(通过 ACL)。原因是它可能会压倒桶的数量,并且用户体验不会是最好的。有任何想法吗 ?
谢谢!
我正在尝试找出一种方法来允许 GCP 用户列出存储桶,但仅限于用户具有权限的存储桶(通过 ACL)。原因是它可能会压倒桶的数量,并且用户体验不会是最好的。有任何想法吗 ?
谢谢!
如果您使用 CLI,您可以编写一个脚本来获取每个列出的存储桶的权限,并且仅当用户帐户在权限列表中时才显示它:
for bucket in $(gsutil ls); do
if gsutil acl get $bucket|grep -q $(gcloud config get-value account) ; then
echo $bucket;
fi;
done
请注意,继承的权限(例如在项目级别)不会出现在此脚本中。
这不能通过控制台完成,但如果您需要一个仅列出某些存储桶的 Web 界面,那么您可以通过调用 API 并执行与 CLI 脚本相同的操作来自行构建它。
我正在尝试找出一种方法来允许 GCP 用户列出存储桶,但仅限于用户具有权限的存储桶(通过 ACL)。
您无法使用存储桶 ACL 或 IAM 权限来实现您的目标。
要列出 Google Cloud Storage 存储分区,您需要 IAM 权限storage.buckets.list
。
此权限授予 IAM 成员账户列出项目中所有存储桶的权限。您不能进一步限制此权限以仅列出特定存储桶名称。此权限不允许列出存储桶中的对象。
对于未来的设计决策,您可以使用不同的项目并在项目下组织您的存储桶。这将限制仅访问该项目的 IAM 成员。
创建存储桶时,您将永久定义其名称、位置和它所属的项目。这些特性以后无法更改。