google-oauth - 我们的 SaaS 多租户 webapi 的 Google oAuth 域问题
问题描述
我们收到此 google 警告是因为我们的一个 google 项目有多个域。
您的项目:{app} 在重定向 URI 和原始 URL 中有多个唯一域,其中许多具有不相关的应用程序。这直接违反了 Google API 服务:用户数据政策,该政策要求项目在请求访问 Google 用户数据时准确地向 Google 和我们的用户展示其身份和意图。
- 第一个域是应用程序 {app}.tld 的网站
- 第二个域是发生 OAuth 的 api {tenant-id}.subdomain.domain.tld
我们的违规来自域 {tenant-id}.subdomain.domain.tld,这是我们托管多租户 API 的地方。
是否可以在仍然使用我们的多租户 api 处理 OAuth 舞蹈的同时解决这个问题?
解决方案
我猜你正在使用 {tenant-id}.subdomain.domain.tld 作为回调 url 并为每个租户添加一个唯一的 url。
为了解决这个问题,我认为您可以添加一个回调 url。像 callback.domain.tld 这样的东西可能会起作用。此端点应使用来自 google 的所有查询参数将原始 google 重定向重定向到 {tenant-id}.subdomain.domain.tld。您可以对状态中的 tid 进行编码,以便您可以对其进行解码以在重定向服务中正确重定向请求。
您还可以使用 AWS lambda 等服务充当中间人并重定向到您的最终终端节点。
推荐阅读
- java - 缺少工件 8.1.2-SNAPSHOT。无法完全安装 docx4j
- java - Firebase 指数退避与未发送的下标
- php - SQL 不接受包含带有冒号 (":") 的值的 INSERT INTO
- c# - 如何使用服务类使我的 web-api 与我的控制器一起工作?
- c++ - 复制构造函数并从方法中获取数据
- java - 使用 Fisica/Box2D 在处理中滚动背景
- lua - debug.getinfo(1, "n").name 引起的奇怪行为
- javascript - 如何使用 CryptoJS AES 解密消息?我有一个工作节点加密示例
- swift - 如何在 Swift UI 上的 TextField 和 Text 组件中放置多行(断行)?
- batch-file - 批处理文件循环 - 运行所有满足 findstr 条件的文件