繁体   English   中英

仅使用 API 密钥作为 Auth 在 firestore DB 中发布

[英]POST in firestore DB using only API Key as Auth

在我的 firebase 中,我将身份验证设置为“Anonym”,并想使用项目 API 密钥尝试 POST 到我的 firestore,如下所示:

POST /v1/projects/myproject123-62cd3/databases/(default)/documents/sammlung2/test321 HTTP/1.1
Host: firestore.googleapis.com
Content-Type: application/json
Authorization: Bearer apikey3123idsn3ejhsd3
Content-Length: 111

{
  "fields": {
    "field1": { "stringValue": "value1" },
    "field2": { "stringValue": "value2" }
  }
}

Firestore 规则是:

rules_version = '2';
service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow write, read: if request.auth.uid == 'API_KEY';
    }
  }
}

作为响应,我得到“请求具有无效的身份验证凭据”。 我在这里做错了什么?

无法使用项目的 API 密钥发布到 Firestore。 Authorization标头中的不记名令牌必须是 Firebase 身份验证用户的 ID 令牌,或者是项目协作者的 OAuth2 令牌。

另请参阅有关使用 Firestore 的 REST API 进行身份验证和授权的 Firebase 文档,其中说:

对于身份验证,Cloud Firestore REST API 接受Firebase Authentication ID tokenGoogle Identity OAuth 2.0 token

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM