微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

firebase管理节点,权限不足

如何解决firebase管理节点,权限不足

我已经检查了其他堆栈,但是仍然不确定为什么我得到的权限不足错误。可能我没有安全感。

我正在尝试从2个不同的Firebase帐户同步用户。第一个帐户在第二个帐户上调用Firebase函数。如果用户不存在,它将创建并进行一些数据库编制。如果用户存在,则会创建一个自定义令牌,并将其传递回第一个帐户,以在iframe查询参数中使用。

我已经创建了IAM服务帐户,创建了密钥并保存到文件,并像其他堆栈说明一样编辑了服务令牌权限,但是尽管如此,我还是遇到了错误。这是我的功能开始:

const firebaseConfig = {
  credential: admin.credential.applicationDefault(),apiKey: "xxxxxxxxxxxxxxxxxxxxxxx",authDomain: "itsli7-87384.firebaseapp.com",databaseURL: "https://itsli7-87384.firebaseio.com",projectId: "itsli7-87384",storageBucket: "itsli7-87384.appspot.com",messagingSenderId: "503897448704",appId: "1:503897448704:web:45773bfb231a24bbe213e5"
}


fb.initializeApp(firebaseConfig);
admin.initializeApp(firebaseConfig);

函数正在运行。

return admin.auth().getUser(data.user.uid)
      .then(async function () {
        return admin.auth().createCustomToken(data.user.uid)
          .then(function (customToken) {
            res.send(customToken);
          })
          .catch(function (error) {
            console.log('Error creating custom token:',error);
          });

错误

代码:身份验证/权限不足

创建自定义令牌时出错:FirebaseAuthError:调用者没有 获得许可;请参阅 https://firebase.google.com/docs/auth/admin/create-custom-tokens的 有关如何使用和解决功能的更多详细信息。

解决方法

与其使用指定的方法将cred.json添加到admin.credential.applicationDefault(),然后将相同的firebase init配置对象传递给admin init,而是使用以下方法:

var serviceAccount = JSON.parse(fs.readFileSync("cred.json"));

admin.initializeApp({
  credential: admin.credential.cert(serviceAccount),databaseURL: "https://itsli7-87384.firebaseio.com"
});

fb.initializeApp(firebaseConfig);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?