我的 GCS 存储桶中有几个 PDF 和 img 文件。每个文件都属于不同的用户。我有将文件指向特定用户的标识符。在网站上向用户显示存储桶中的文件的安全方式是什么?第一个选项是使 GCS 存储桶文件可公开访问,并通过公共 URL 将其显示给用户,但这是一个坏主意,因为任何人都可以访问任何人的文件。像 Google Drive 这样的网站是如何实现这一目标的?任何解释表示赞赏。
Firebase Security Rules for Cloud Storage
,它与 Firebase Authentication
绑定以实现基于用户的安全性。当用户通过 Firebase Authentication
进行身份验证时,您将知道他们是谁,Cloud Storage
允许您指定服务器上的每个文件和每个路径授权规则,并确定对应用程序中文件的访问权限。
这里是示例用户私人文件的存储规则:
match /users/{userId}/profilePicture.png {
allow read;
allow write: if request.auth.uid == userId;
}
如果您想使用
google cloud storage
控制谁可以访问您的 Terraform
存储桶和对象以及具有哪些权限,请查看此 教程