【问题标题】:How to get Firestore rules working with service accounts如何让 Firestore 规则与服务帐户一起使用
【发布时间】:2019-01-26 14:12:32
【问题描述】:

正如 Firestore 文档 here 中所写,我有这样的安全规则:

service cloud.firestore {
  match /databases/{database}/documents {
    match /users/{userId} {
      allow read, update, delete: if request.auth.uid == userId;
      allow create: if request.auth.uid != null;
    }
  }
}

当我通过客户端库进行身份验证时,此规则有效,但当我使用 firebase 文档中所写的服务器库时无效

注意:服务器客户端库绕过所有 Cloud Firestore 安全规则,而是通过 Google 应用程序默认凭据进行身份验证。如果您使用服务器客户端库或 REST 或 RPC API,请确保为 Cloud Firestore 设置 Cloud Identity and Access Management。

如何将此安全规则复制到服务帐户角色?

【问题讨论】:

    标签: firebase google-cloud-firestore


    【解决方案1】:

    目前无法将使用 Firebase Admin SDK 和服务帐号访问 Firestore 的代码限定为特定用户 ID 以执行安全规则。使用 Admin SDK 进行的所有访问都将绕过安全规则并完全控制数据库。

    请注意,这与具有此类功能的实时数据库不同。

    【讨论】:

    猜你喜欢
    • 2018-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-04
    • 2014-01-07
    • 2014-10-15
    • 2020-05-31
    • 1970-01-01
    相关资源
    最近更新 更多