Firestore许可在生产的Electron应用程序中被拒绝,但请求正在开发中

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

我已在Firestore数据库中添加了多个规则。当我在开发模式下测试该应用程序时,一切都会按其应有的方式工作,但是由于某种原因,当我为生产而构建和运行该应用程序时,所有请求都被拒绝,并显示“缺少或权限不足”。

我不允许任何人阅读文档。这些规则至关重要,我不确定它们是否是问题所在。我已经使用Firestore模拟器来测试呼叫以及该模拟器。

我正在使用命令进行构建:

electron-builder build --win --x64

规则

match /databases/{database}/documents {
 function owns(id) {
   return request.auth.uid == id;
 }
 match /{userId}/{document=**} {
   allow read, write: if owns(userId);
 }
}
load(collectionName) {
  const uid = firebase.auth().currentUser;
  let collection = uid && 
   firebase.firestore().collection(uid).doc("data").collection(collectionName);
  }

  return collection.get();
}

基本上,数据库的顶层是用户ID,用户可以访问其顶层集合中的集合。

firebase security google-cloud-firestore electron electron-builder
1个回答
0
投票

这是由于firebase-js-sdk中的问题

相应的问题在这里:https://github.com/firebase/firebase-js-sdk/issues/1491

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