仅通过云功能在firestore中读写

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

我想设置我的Cloud Firestore数据库权限,这样除了通过云功能之外,没有人能够从中读取和写入。

我怎样才能做到这一点?

我的猜测(根据Firestore文档)是我必须为我想要的设置正确的条件,但它会是什么条件?我不知道如何与规则“沟通”云函数调用。

service cloud.firestore {
  match /databases/{database}/documents {
    match /<some_path>/ {
      allow read, write: if <some_condition>;
    }
  }
}
google-cloud-firestore google-cloud-functions firebase-security-rules
1个回答
1
投票

简单地消除所有规则并用拒绝一切的规则替换它们:

service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write: if false;
    }
  }
}

没有明确允许移动和Web客户端访问,不允许任何人访问。服务器SDK始终绕过安全规则,因此只要您用于初始化SDK的服务帐户具有写访问权限,它就会起作用。云功能中使用的默认服务帐户应该没问题。

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