如何使用 React Native Firebase 安全地从 Firebase 存储中删除视频?

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

我有一个反应本机聊天应用程序,用户可以在其中向其他用户发送消息。简化的消息对象如下所示:

interface Message {
  senderId: string,
  text: string,
  videoDownloadUrl: string
}

消息存储在

firestore
messages 集合中,相应的视频存储在 storage 中。在消息对象中,我只存储视频的
downloadUrl
,而不是实际的 url,视频位于 firabase 存储服务器上。如何安全删除此类消息及其视频而不让用户知道视频的实际路径?

我的想法是,如果用户有权访问视频的实际路径,这将是一个安全问题。所以我只是将 downloadUrl 放入消息对象中。这个想法是否正确,或者我可以让用户访问实际路径吗?我不知道如何在没有视频路径的情况下删除消息的视频。

firebase react-native firebase-storage react-native-firebase
1个回答
0
投票

您的帖子中有两个不同的问题。第一个问题已经被问过好几次了。对象的路径存储在下载 URL 本身中。

对于你的第二个问题:

在 Cloud Storage 中提供对象的路径并没有固有的问题。无论如何,该路径都会被编码到下载 URL 中,因此它并不是真正的秘密。您应该做的是为您的存储桶提供安全规则,根据您的安全要求限制下载。这些要求应与 Firebase 身份验证中的用户帐户相关,以确定谁应该能够读取或写入哪些对象。

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