惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

P
Proofpoint News Feed
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Microsoft Security Blog
Microsoft Security Blog
云风的 BLOG
云风的 BLOG
MongoDB | Blog
MongoDB | Blog
Know Your Adversary
Know Your Adversary
K
Kaspersky official blog
人人都是产品经理
人人都是产品经理
IT之家
IT之家
Recorded Future
Recorded Future
Recent Announcements
Recent Announcements
D
DataBreaches.Net
C
CXSECURITY Database RSS Feed - CXSecurity.com
U
Unit 42
博客园 - 【当耐特】
I
Intezer
Cisco Talos Blog
Cisco Talos Blog
Spread Privacy
Spread Privacy
L
LINUX DO - 热门话题
H
Help Net Security
L
LangChain Blog
T
The Exploit Database - CXSecurity.com
P
Palo Alto Networks Blog
Scott Helme
Scott Helme
The GitHub Blog
The GitHub Blog
博客园_首页
P
Proofpoint News Feed
大猫的无限游戏
大猫的无限游戏
S
Secure Thoughts
The Register - Security
The Register - Security
Engineering at Meta
Engineering at Meta
T
Threatpost
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Blog — PlanetScale
Blog — PlanetScale
C
Cybersecurity and Infrastructure Security Agency CISA
T
Troy Hunt's Blog
罗磊的独立博客
腾讯CDC
Simon Willison's Weblog
Simon Willison's Weblog
Security Latest
Security Latest
Last Week in AI
Last Week in AI
P
Privacy & Cybersecurity Law Blog
Latest news
Latest news
The Cloudflare Blog
Jina AI
Jina AI
小众软件
小众软件
Cloudbric
Cloudbric
TaoSecurity Blog
TaoSecurity Blog
F
Full Disclosure
V
V2EX

博客园 - ace--碳水化合物

English1 Tidio 官方帮助中心 ERP 相关系统介绍 蝉翼定理 选配法 利润最大化公式 写在失业的一段话 排列组合-组合 在线简历 概率论与数理统计学习章节 绝对值 比例五大定理 算术平均值与几何平均值 等价符号 公因数与最大公因数 容斥原理 英语2026 机器学习,深度学习,强化学习 分别是什么以及区别是什么 深度学习 监督学习 FAQ IVR TTS选择 k 近邻算法 kaldi 平稳核函数(stationary kernel) Karush-Kuhn-Tucker 条件 凸二次规划(convex quadratic programming) FunASR+FreeSwitch做坐席客服系统记录 freeswitch原理图 客服系统,第三方平台,对话转录音,这些可以不依赖第三方做么 STUN服务器 Gun.js原理 游戏升级记 10 OBB 边界问题 关于yolo26是否可以通过结合java开发 opencv和yolo是一回事情吗 pytorch TorchVision - ace--碳水化合物 PyTorch 和 FashionMNIST 的关系 java record 游戏升级记 9 VibeVoice实现90分钟、多角色播客生成,拓展语音合成新边界 同 WiFi 下用 Claude Code 控制另一台 Windows 电脑 Numpy 1 游戏升级记 8 开源claudecode前端 github star 9k+ 向量数据库skill 游戏升级记 7 游戏升级记 6 关系型数据库,向量数据库,ES,缓存,列式数据库,时序数据库,图数据库等的区别和共同点列举table 多Agent可视化 Agent设计模式 中文 Hermes+Obsidian+LLM wkii,构建AI知识库 Claude Code 前端工程泄露代码开源 游戏升级记 5 ai记忆 Rag 1 游戏升级记 4 游戏升级记 3 游戏升级记 2 AI学习路线 关于hermes agent安装 1 游戏升级记 1 代码迷踪 十三 代码迷踪 十二 ai智能体工程 Rust vs Go 微信小程序实名认证 怎样制作一个街机游戏 跟Claude code说 深入思考 它会思考更深入. 该怎样利用ollama自己训练一个编程大模型 中华AI智能体编程一站式基站构想 打包网站到exe和app 识别的内容一般是试题模板的题号和手写的答题答案(数字) opencv怎么训练 在线SaaS系统做接口版本滚动更新 stripe相关支付流程 流程示意图 error: linker `link.exe` not found | = note: program not found - rust 给我一份关于stripe平台的使用开发说明 c++学习记20260219 奥数-平面几何经典定理 奥数-组合数学 奥数-几何 奥数-代数 奥数-数论
googlebusiness profile设置统一白名单的操作,要弹窗模式的
ace--碳水化合物 · 2026-04-03 · via 博客园 - ace--碳水化合物

改成 ux_mode: 'popup' 模式,通常并不能免除根据每个租户(不同二级域名)设置 JavaScript 来源白名单的要求。

在 Google 身份验证体系中,重定向模式弹窗模式都属于 OAuth 2.0 流程,受到同样的安全限制。Google 要求开发者将授权请求发起的来源(Origin)添加到白名单中,这是为了防止跨域攻击和未授权的域名滥用。

针对你提到的“多租户二级域名”场景,目前主流的解决方案通常有以下几种:

  • 方案一:配置泛域名(推荐尝试)
    在 Google Cloud 控制台的“授权 JavaScript 来源”中,检查是否支持配置通配符。如果支持,你可以填入 https://*.yourdomain.com,这样所有二级域名(如 tenant-a.yourdomain.comtenant-b.yourdomain.com)都会被自动允许,无需逐个添加。

  • 方案二:统一回调代理
    如果不支持泛域名,通常建议设置一个固定的、专门用于处理 OAuth 登录的独立域名(如 login.yourdomain.com)。

    1. 在白名单中只添加这个固定域名。
    2. 在多租户页面中,让弹窗或重定向跳转到这个固定域名进行授权。
    3. 授权成功后,再通过 postMessage 或 URL 参数将 token 传回对应的租户二级域名页面。这样后端只需要维护这一个白名单记录。
  • 方案三:动态维护列表
    如果租户数量有限且相对固定,也可以在 Google Cloud 控制台中手动维护一个具体的二级域名列表。这种方式虽然管理成本稍高,但能确保安全性。

  • 方案四:后端代理模式
    完全放弃前端直接调用,由你自己的后端服务器统一对接 Google API。前端只与你的后端通信,后端通过服务端凭证或固定的客户端凭证处理 Google 请求。这样前端不再直接调用 Google,也就绕过了 JavaScript 来源的白名单限制。

建议你优先检查 Google Cloud 控制台是否支持泛域名配置,如果不行,采用统一回调代理方案通常是多租户 SaaS 系统比较常见的处理方式。