Kru*_*Lia 9 node.js firebase firebase-realtime-database firebase-admin firebase-app-check
我在我的项目中启用了Firebase App Check,以确保所有请求仅来自我们的应用程序。到目前为止,这一直运行良好(使用 RecaptachaV3 作为网络证明提供程序)。但是我想从我的后端 Nodejs 服务器访问数据库(rtdb)。我正在使用 firebase-admin-sdk 及其服务帐户。但我做不到。
const { initializeApp, applicationDefault } = require('firebase-admin/app');
const { getDatabase } = require('firebase-admin/database');
const app = initializeApp({
credential: applicationDefault(),
databaseURL: '********',
});
const db = getDatabase(app);
const ref = db.ref('/some-path');
ref.once('value', (snapshot) => {
console.log(snapshot.val());
});
Run Code Online (Sandbox Code Playgroud)
抛出以下错误
[2022-06-27T09:42:25.299Z] @firebase/database: FIREBASE WARNING: Missing appcheck token (https://qtalkproject.firebaseio.com/)
应用程序检查不是仅针对客户端吗?Firebase 不应该允许来自服务帐户的所有请求吗?为什么要求应用程序检查令牌?根据文档, firebase-admin-sdk 可以创建应用程序检查令牌。如果允许创建应用程序检查令牌,是不是意味着它已经通过了身份验证?为什么我无法从同一个 admin sdk 访问数据库?我在这里错过了什么吗?
如果其他人像我一样被阻止,直到 firebase 发布修复程序,您可以使用旧版本的 firebase admin sdk,它没有应用程序检查(我使用 v9.3.0)来访问 rtdb 和其他 firebase 功能
归档时间: |
|
查看次数: |
980 次 |
最近记录: |