如何使用 Google OAuth 令牌初始化 Firebase Admin SDK?



我正在使用node.js和passport-google-oauth20软件包在我的Web控制台上使用登录系统。

使用护照,我获得了Google帐户的oauth令牌(访问令牌和刷新令牌(,并希望使用它初始化Firebase管理员SDK。

var refreshToken; // Get refresh token from OAuth2 flow
admin.initializeApp({
credential: admin.credential.refreshToken(refreshToken),
databaseURL: 'https://<DATABASE_NAME>.firebaseio.com'
});

这是我可以在Google Firebase网站(https://firebase.google.com/docs/admin/setup(上找到的代码。所以我需要一个刷新令牌来初始化Firebase Admin SDK。

但是代码出错 无法解析刷新令牌文件:错误:ENOENT:没有此类文件或目录,请打开"刷新令牌">

我尝试使用包含刷新令牌、client_id、client_secret、project_id类型的 JSON 对象设置参数。但它仍然不起作用。

如何使用谷歌 oauth 令牌初始化 Firebase 管理员 SDK?

添加:由于安全问题,我不打算使用服务帐户进行服务器端身份验证。

传递给admin.credential.refreshToken()方法的参数必须是具有属性client_idclient_secretrefresh_tokentype的对象。或者,它必须是包含此类对象的文件的路径。

最新更新