尝试锻炼我应该如何存储每个用户上传的文件的文件。文件必须是私有的,因此只有上传文件的人才能读/写。
我的问题是,我应该为每个userId创建一个存储桶并将该存储桶保护给该用户,还是应该将所有内容都转储到单个存储桶中,并利用每个文件的GCS ACL权限?
将每个用户文件放在各自的存储桶中似乎很有意义,但只是在寻求最佳实践方面的澄清。
答案 0 :(得分:2)
通常,不需要为每个用户创建一个新的存储桶。这将无法扩展(就工作而言),因为您将花费大量时间来管理所有这些存储桶。
您应该从Cloud Storage security rules上的文档开始。特别是user based security上的页面。您可以使用安全规则来确定谁可以对存储中的各种文件执行操作。您实际上如何编写这些规则将取决于您希望如何构造文件。通常,您在文件路径中使用Firebase Auth用户ID,并在规则中使用通配符基于该uid进行保护。