我在nodejs中使用firebase身份验证多租户
当我尝试使用firebase模拟器套件创建身份验证租户时,我得到404错误。但是如果我使用我的生产firebase,同样的代码可以工作。
你可以通过在nodejs运行时运行下面的代码来重现这个错误。我假设您正在运行firebase模拟器,并且您有一个具有服务帐户配置的firebase项目
const admin = require('firebase-admin')
process.env["GOOGLE_APPLICATION_CREDENTIALS"] = "path/to/serviceaccount.json" // replace with the path to your google cloud service account config
process.env['FIREBASE_AUTH_EMULATOR_HOST'] = "localhost:9099" // firebase emulator auth port
admin.initializeApp({
credential: admin.credential.applicationDefault()
});
admin.auth().tenantManager().createTenant({
displayName: 'Tenant123',
emailSignInConfig: {
enabled: true,
passwordRequired: false, // Email link sign-in enabled.
}
})
.then(newTenant => {
console.log('new tenancy created', newTenant)
})
.catch(error => console.error(error))
Firebase Admin SDK支持Firebase Authentication Multi-tenancy。为了测试Firebase产品和服务,我们使用Firebase模拟器和Firebase管理SDK,但是Firebase认证多租户支持需要Google Cloud的身份平台(GCIP)。
因此,我们不能在Firebase本地模拟器中使用Firebase身份验证多租户,因为目前模拟器中没有多租户功能。
如果你想拥有这个功能,你可以在Firebase中提交一个功能请求。