[英]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 token或Google Identity OAuth 2.0 token 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.