gpt4 book ai didi

Firebase 存储永远不会完全私有(private)?

转载 作者:行者123 更新时间:2023-12-03 20:26:45 25 4
gpt4 key购买 nike

我为我们的 Firebase 存储设置了规则,只允许经过身份验证的用户与之交互。

rules_version = '2';

service firebase.storage {
match /b/{bucket}/o {
match /something/{allPaths=**} {
allow read, write: if request.auth.uid != null;
}
}
}

但是,当我在 Firebase 控制台中浏览保存在存储中的 Assets 的详细信息时,我确实为其中的每一个找到了一个公开打开这些 Assets 的链接(当我打开文件的详细信息时),例如:
https://firebasestorage.googleapis.com/v0/b/${my-project}.appspot.com/o/${my-file}?alt=media&token=49385ae5-4df6-44ef-a313-8d1f07b59111

我猜这个链接是 downloadURL并且通过 token 授予公共(public)访问权限.

因此,我知道存储内容实际上并不是完全私有(private)的,因为即使我设置了严格的规则,即使我个人和我的应用程序没有生成下载 URL,Firebase 仍然会为每个文件自动生成这样的 url,因此,即使 token 是很难找到,无论如何,这些内容都可以在网上公开访问。

我的理解正确吗?

或者我在 Firebase 控制台中找到的链接不是下载网址,而是一个临时链接,分别是控制台提供的 token 作为到期期限?

或者是否可以将 Firebase 存储桶设置为不生成任何下载链接?

最佳答案

任何拥有带有有效 token 的下载 URL 的人都可以从任何地方访问内容。但是,如果您从未将该 URL 公开给任何人,那么任何人基本上都无法猜出该 URL,即使他们知道路径。 token 是随机的并且包含大量的熵。

如果您担心有人用正确的 token 猜测此 URL,您还应该担心宇宙中的两个随机原子相互碰撞。 (这有点夸张,但如果您假设标记的每个字符都是有效的十六进制数字,您可以进行数学计算。)

如果您仍然偏执,并且根本不想生成任何下载 URL,则必须手动撤销下载 URL token ,并使用不会同时创建下载 URL 的上传技术,并且永远不要调用来自客户端应用程序的任何文件的 getDownloadUrl。

关于Firebase 存储永远不会完全私有(private)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59782590/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com