如何在网页上安全显示gcs存储桶中的文件

问题描述 投票:0回答:1

我的 GCS 存储桶中有几个 PDF 和 img 文件。每个文件都属于不同的用户。我有将文件指向特定用户的标识符。在网站上向用户显示存储桶中的文件的安全方式是什么?第一个选项是使 GCS 存储桶文件可公开访问,并通过公共 URL 将其显示给用户,但这是一个坏主意,因为任何人都可以访问任何人的文件。像 Google Drive 这样的网站是如何实现这一目标的?任何解释表示赞赏。

node.js google-cloud-platform google-cloud-storage
1个回答
0
投票

您可以考虑使用

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
存储桶和对象以及具有哪些权限,请查看此 教程

© www.soinside.com 2019 - 2024. All rights reserved.