为什么我的服务帐户无法授予对Google Cloud Firestore的远程访问?

时间:2018-12-15 09:06:34

标签: firebase google-cloud-platform google-cloud-firestore

因此,我按照此处的说明进行操作: https://firebase.google.com/docs/firestore/quickstart 使我的Node应用程序与Firestore配合使用(在在您自己的服务器上初始化下)。我像他们所说的那样创建了一个服务帐户,并为其赋予了“ Cloud Firestore Editor”特权,并下载了.json密钥文件。当我像这样运行示例代码时:

const admin = require('firebase-admin');
const serviceAccount = require('./gcloud-service-account.json')

admin.initializeApp({
  credential: admin.credential.cert(serviceAccount)
});

var db = admin.firestore();
db.settings({ timestampsInSnapshots: true })

var docRef = db.collection('users').doc('alovelace');

var setAda = docRef.set({
  first: 'Ada',
  last: 'Lovelace',
  born: 1815
});

我收到此错误:

UnhandledPromiseRejectionWarning: Error: 7 PERMISSION_DENIED: Missing or insufficient permissions.

我做错了什么,或者我可以采取哪些步骤进行调试? 谢谢!

1 个答案:

答案 0 :(得分:0)

没关系...。这是我丢失的服务帐户创建的最后一步-由于某种原因,您必须授予用户对其自身的访问权限,因此请将新创建的帐户名放在“授予用户”框中。希望能对某人有所帮助。