微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

GCP 权限列出 GCS 对象但禁止下载

如何解决GCP 权限列出 GCS 对象但禁止下载

我在 GCS 存储桶中保存了一些敏感数据。现在,需要生成 GCS 对象的 V4 签名 url,并且只允许某些用户下载拥有该 url 的对象。但是,其他用户应该只能看到该对象存在于 GCS 上,但不应被允许下载该对象。

为此,我们创建了一个具有 Storage Admin 角色的服务帐户(是的,我们可以进一步限制它)并使用它来生成 url。但是,问题是,任何具有 storage object viewer 角色的用户都可以下载我们不想要的对象。有什么办法可以限制除服务帐号以外的所有其他用户下载对象?

此外,我尝试创建一个被授予 storage.buckets.liststorage.objects.getstorage.objects.list 权限的自定义角色,然后将该角色分配给所需的用户,但在这两种情况下,用户都是能够下载文件。除了这两个权限之外,我找不到任何其他可以限制下载的权限。

解决方法

应用于您的项目的 IAM 政策定义了用户可以对您项目中的所有对象或存储桶执行的操作。应用于单个存储桶的 IAM 策略定义了用户可以对该特定存储桶和其中的对象执行的操作。

1.为您的存储桶创建 IAM 策略,让一个用户可以管理该存储桶。同时,您可以将另一个用户添加到您的项目范围的 IAM 策略中,让该用户能够查看您项目的任何存储分区中的对象。

2. 转到您的存储分区并定义成员和分配的角色,这使成员能够更广泛地在 Cloud Storage 和 Google Cloud 中执行操作。

这是 GCP 文档中的链接:https://cloud.google.com/storage/docs/collaboration

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。