Google OAuth consent screen配置:支持多独立Google Workspace域名登录
多独立Google Workspace域共享OAuth应用解决方案
结论
你的需求完全可以实现,无需将OAuth同意屏调整为External用户类型,也不需要为用户添加域名别名。
最优方案:跨组织内部应用共享
这是完全符合你预期的官方原生方案,操作步骤如下:
- 登录domain-a.com对应的Google Workspace超级管理员账号,进入管理后台,依次打开「应用 > Web和移动应用」
- 找到你已经配置好OAuth同意屏的目标应用,进入应用的「访问权限管理」页面
- 选择「添加外部组织」,输入domain-b.com所属Google Workspace的组织ID(domain-b的Workspace管理员可在自身后台「账户设置 > 组织资料」路径下获取该ID)
- 配置访问规则为允许该外部组织内所有用户访问,保存配置后等待15~30分钟全局生效
- 无需修改domain-a云控制台内OAuth同意屏的Internal用户类型配置,生效后domain-b的域用户可直接正常登录该应用
备选方案:External模式+域名校验
如果你的Workspace套餐不支持跨组织应用共享功能,可采用该方案:
- 将OAuth同意屏用户类型调整为External,若使用场景仅覆盖两个域的内部用户,发布状态可选择「测试」,手动添加domain-b的用户到测试白名单即可,无需谷歌官方审核
- 若domain-b需要登录的用户量较大,可将应用正式上线,在你的业务侧OAuth认证逻辑中增加域名校验规则:拿到用户授权返回的
id_token后,提取其中的hd(Hosted Domain)字段,仅允许hd值为domain-a.com或domain-b.com的用户通过校验,拦截其余所有域名的访问请求
关于Domain Verification选项的说明
你在APIs and Services页面看到的Domain Verification功能仅用于验证你对应用关联域名的所有权,主要用于OAuth同意屏域名展示、webhook回调域名校验等场景,和跨Workspace域用户授权没有关联,你当前的需求不需要操作该配置。
内容的提问来源于stack exchange,提问作者Lewsmith
相关产品推荐
相关产品推荐

