我正在使用Oauth2对第三方Firebase项目所有者进行身份验证,并使用他们的Google帐户授予他们对Firestore平台项目的访问权限。我的目标是让数据库触发器运行,不是从我自己的数据库运行,而是在第三方管理员拥有的数据库上运行,即我不拥有或没有直接访问权限的数据库。
对于我自己的管理员,我会用我自己的服务帐户:
const admin = require('firebase-admin');
const serviceAccount = require('./path/to/serviceAccountKey.json');
admin.initializeApp({
credential: admin.credential.cert(serviceAccount)
});
const db = admin.firestore();是否有一种方法让第三方Firebase管理员在不手动共享他们的项目的情况下授予他们对数据库的访问权?
向不完全通过firebase-admin sdk的选项开放
可能的选择可能是这样的:
Oauth获得第三方访问serviceAccount.json或Firebase Project Settings的Oauth许可或其他方式。为实现这一目标:
const admin = require('firebase-admin');
//Maybe this??
const thirdPartyServiceAccount = require('./path/to/serviceAccountKey.json');
admin.initializeApp({
credential: admin.credential.cert(serviceAccount)
});
//Or this??
admin.initializeApp({
credential: admin.credential.refreshToken(thirdPartyRefreshToken)
});
const thirdPartyDB = admin.firestore();类似的问题似乎没有解决我的用例。
https://stackoverflow.com/questions/63901019
复制相似问题