You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过API为Firebase Auth多租户配置社交登录提供商?

问题:Firebase Auth多租户环境是否支持通过API配置社交登录提供商?

背景

我拥有一个白标应用,对接多个合作伙伴,每个合作伙伴可创建多个Web应用,每个Web应用拥有独立的身份认证数据库。例如:某合作伙伴创建了Web应用A和B,用户在A中注册的账号无法登录B,仅能登录A。

实现方案

我使用Firebase Auth,计划通过多租户(multi-tenancy)方案实现该需求。每个合作伙伴对应一个Firebase项目,每个Web应用关联一个租户(tenant),每个租户需配置Facebook、Google等多种社交登录提供商。

当前疑问

我可以通过控制台配置社交登录提供商,但未找到如何通过API为多租户环境批量配置的方法,仅找到无租户场景下的API配置文档。请问是否支持通过API为Firebase Auth多租户环境配置社交登录提供商?


回答

是的,Firebase Auth多租户环境支持通过API批量配置社交登录提供商,你需要使用Google Cloud Identity Platform Admin API中的租户专属端点来操作。

核心操作端点

针对租户的OAuth身份提供商配置,主要使用以下几个API端点:

  • projects.tenants.defaultOAuthIdpConfigs.create:为指定租户创建新的社交登录提供商配置
  • projects.tenants.defaultOAuthIdpConfigs.update:更新已有的租户社交登录配置
  • projects.tenants.defaultOAuthIdpConfigs.get:获取租户的指定社交登录配置

示例:为租户配置Google登录

以配置Google OAuth登录为例,你可以发送如下HTTP请求(或使用对应的SDK):

POST https://identitytoolkit.googleapis.com/v2/projects/{PROJECT_ID}/tenants/{TENANT_ID}/defaultOAuthIdpConfigs?key=YOUR_API_KEY
Content-Type: application/json

{
  "providerId": "google.com",
  "clientId": "YOUR_GOOGLE_CLIENT_ID",
  "clientSecret": "YOUR_GOOGLE_CLIENT_SECRET",
  "displayName": "Google"
}

注意事项

  1. 操作前需确保你的服务账号拥有firebaseauth.configs.update或对应的Identity Platform权限
  2. 不同社交提供商的配置参数略有差异(比如Facebook需要额外的graphApiVersion),需参考官方参数定义
  3. 批量配置时可以通过脚本循环调用API,实现对多个租户的批量操作

内容的提问来源于Stack Exchange,提问作者Pedro Voy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 18:37:35