所有访问 Google API 的应用都必须验证其是否准确地表明了其身份和意图,如 Google 的 API 服务用户数据政策中所述。为了保护您以及 Google 和您应用的共享用户,您的权限请求页面和应用可能需要经过 Google 的验证。
如果您的应用符合以下所有条件,则需要进行验证:
- 在 Google API 控制台中,您的应用配置已设置为外部用户类型和已发布发布状态。这意味着您的应用处于正式版状态,可供拥有 Google 账号的任何用户使用。
- 您希望应用在 OAuth 权限请求页面上展示徽标或显示名称。
如果您验证应用的品牌信息,则可以提高用户识别您的品牌并决定授予应用访问权限的可能性。经过验证的品牌信息还可以减少日后用户或 Google Workspace 管理员查看有权访问账号的第三方应用和服务时撤消访问权限的情况。在您点击验证品牌按钮后,自动品牌验证流程通常需要几分钟时间。在某些情况下,如果无法自动确定结果,您的应用可能会进入人工审核流程,该流程通常需要 2-3 个工作日。
如果您的应用的品牌信息仍未经过验证,可能会导致用户对您请求其数据的信任度降低,从而导致用户授权减少,日后撤销授权的情况增多。
OAuth 权限请求页面
权限请求页面会告知用户谁在请求访问其数据,以及您的应用需要代表他们访问哪些类型的数据,如图 1 的方框 2 中突出显示的内容。
当您的应用通过品牌验证流程并获得批准后,授予权限的账号更有可能清楚地了解您应用的身份和用户数据政策。这种清晰的理解可以提高账号持有人授权您的请求的可能性,并在他们查看 Google 账号页面上可能撤销的权限时保持访问权限。您在 Cloud 控制台中的 OAuth 品牌页面上配置的内容会填充以下组件:
- 您的应用名称和徽标(如图 1 的框 1 所示)
- 您的用户支持电子邮件地址,在选择应用名称后显示(图 1 中的框 2)
- 指向您的隐私权政策和服务条款的链接(图 1 中的方框 3)
已获授权的网域
在品牌验证流程中,Google 要求验证与应用的 OAuth 权限请求页面和凭据关联的所有网域。我们会要求您验证可在公共后缀上注册的网域组件,即“顶级私有网域”。例如,如果 OAuth 权限请求页面配置的应用首页为 https://sub.example.com/product,则会要求账号持有人验证 example.com 网域的所有权。
OAuth 权限请求页面编辑器的已获授权的网域部分需要包含应用网域部分的 URI 中使用的顶级专用网域。这些网域包括应用首页、隐私权政策和服务条款。已获授权的网域部分还需要包含在“Web 应用”OAuth 应用类型中授权的重定向 URI 或 JavaScript 来源。
使用 Google Search Console 验证已获授权网域的所有权。拥有网域所有者权限的 Google 账号必须与使用该授权网域的 API 控制台项目相关联。如需详细了解 Google Search Console 中的域名验证,请参阅验证网站所有权。
验证准备步骤
所有使用 Google API 请求访问数据的应用都必须执行以下步骤来完成品牌验证:
- 确认您的应用不属于验证要求的例外情况部分中的任何用例。
- 确保您的应用符合相关 API 或产品的品牌要求。例如,请参阅 Google 登录范围的品牌推广指南。
- 在 Google Search Console 中验证项目授权网域的所有权。使用与您的 API 控制台项目关联的 Google 账号(作为所有者或编辑者)。
- 确保 OAuth 权限请求页面上的所有品牌信息(例如应用名称、支持电子邮件、首页 URI、隐私权政策 URI 等)准确代表应用的身份。
应用首页要求
请确保您的首页符合以下要求:
- 您的首页必须可公开访问,而不仅仅是可供网站的登录用户访问。
- 您的首页与正在接受审核的应用之间的相关性必须清晰明确。
- 指向您应用在 Google Play 商店中的详情页面或其 Facebook 页面的链接不被视为有效的应用首页。
应用隐私权政策链接要求
请确保应用的隐私权政策符合以下要求:
- 隐私权政策必须对用户可见,托管在与应用首页相同的网域中,并链接到 Google API 控制台的 OAuth 权限请求页面。请注意,首页必须包含应用功能的说明,以及指向隐私权政策和可选服务条款的链接。
- 隐私权政策必须披露您的应用访问、使用、存储或分享 Google 用户数据的方式。您对 Google 用户数据的使用方式必须仅限于您已发布的隐私权政策中披露的做法。
如何提交应用以进行品牌验证
Google Cloud 控制台项目用于组织您的所有 Cloud 控制台资源。项目包含一组有权执行项目操作的关联 Google 账号、一组已启用的 API,以及这些 API 的结算、身份验证和监控设置。例如,一个项目可以包含一个或多个 OAuth 客户端,配置供这些客户端使用的 API,以及配置在用户授权访问您的应用之前向用户显示的 OAuth 权限请求页面。
如果您的任何 OAuth 客户端尚未准备好投入生产,我们建议您将其从请求验证的项目中删除。您可以在“客户”页面中执行此操作。
如需提交验证申请,请按以下步骤操作:
- 确保您的应用符合 Google API 服务条款和 Google API 服务用户数据政策。
- 在 Cloud 控制台中,及时更新项目关联账号的所有者和编辑者角色,以及 OAuth 权限请求页面的用户支持电子邮件地址和开发者联系信息。这样可确保您团队中的相关成员能够收到任何新要求的通知。
- 前往 Cloud 控制台的 OAuth “品牌信息”页面。
- 点击项目选择器按钮。
在随即显示的请选择:对话框中,选择您的项目。如果您找不到项目,但知道项目 ID,则可以在浏览器中按以下格式构建网址:
https://console.developers.google.com/auth/branding?project=[PROJECT_ID]
将 [PROJECT_ID] 替换为您要使用的项目 ID。
在品牌页面中,提供应用的品牌信息,包括应用名称、徽标、开发者联系信息和相关链接。您所做的任何更改都会保存为品牌草稿。
点击验证品牌信息按钮,开始评估流程。自动审核通常会在几分钟内完成。
评估完成后,查看状态。如果成功,状态会更改为可发布。如果自动验证失败,您可以查看检测到的问题,然后解决这些问题或申请人工审核。
点击发布品牌信息按钮,使新品牌信息生效。
如果您的应用还需要针对敏感或受限范围进行验证,请前往 OAuth 验证中心,跟踪您的数据访问状态,并提供所要求的任何其他信息,例如演示视频。请注意,您必须先拥有已发布的品牌状态,然后才能申请数据访问权限验证。
使用添加或移除范围按钮声明应用请求的所有范围。非敏感范围部分中预填充了 Google 登录所需的一组初始范围。添加的范围分为非敏感、敏感或受限。
最多可以提供三个指向应用中相关功能的相关文档的链接。
在后续步骤中,提供系统要求的关于您应用的所有其他信息。
在您发布品牌信息或提交数据访问请求后,Google 的信任与安全团队可能会通过电子邮件跟进,告知您他们需要的任何其他信息或您必须完成的步骤。请查看开发者联系信息部分中的电子邮件地址以及 OAuth 权限请求页面中的支持电子邮件,了解是否收到了要求提供更多信息的请求。您还可以查看项目的“品牌信息”或“验证中心”页面,确认项目的当前审核状态,包括审核流程是否因等待您的回复而暂停。
验证要求的例外情况
如果您的应用将在以下各部分所述的任何场景中使用,则无需提交审核。
个人使用
一种用例是,您是应用的唯一用户,或者应用只有少数用户,且这些用户都是您本人认识的。您和您的少数用户可能愿意通过未经验证的应用屏幕,并授予您的个人账号对您应用的访问权限。
在开发、测试或预演层级中使用的项目
为了遵守 Google OAuth 2.0 政策,我们建议您为测试环境和生产环境分别创建不同的项目。我们建议您仅在希望向任何拥有 Google 账号的用户提供应用时,才提交应用进行验证。因此,如果您的应用处于开发、测试或预演阶段,则无需进行验证。
如果您的应用处于开发或测试阶段,您可以将发布状态保留为默认设置测试。此设置意味着您的应用仍处于开发阶段,只能供添加到测试用户列表中的用户使用。您必须管理参与应用开发或测试的 Google 账号列表。
仅限服务拥有的数据
如果您的应用使用服务账号仅访问其自己的数据,而不访问任何用户数据(与 Google 账号关联),则您无需提交验证。
如需了解什么是服务账号,请参阅 Google Cloud 文档中的服务账号。如需了解如何使用服务账号,请参阅将 OAuth 2.0 用于服务器到服务器应用。
仅限内部使用
这意味着该应用仅供您的 Google Workspace 或 Cloud Identity 组织中的用户使用。该项目必须归组织所有,并且其 OAuth 权限请求页面需要配置为内部用户类型。在这种情况下,您的应用可能需要获得组织管理员的批准。如需了解详情,请参阅 Google Workspace 的其他注意事项。
- 详细了解公共应用和内部应用。
- 请参阅常见问题解答如何将应用标记为仅限内部使用?,了解如何将应用标记为内部应用。
全网域安装
如果您计划让应用仅面向 Google Workspace 或 Cloud Identity 组织的用户,并始终使用全网域安装,则应用不需要进行品牌验证。但是,如果您的应用使用受限或敏感范围,则需要进行应用验证。这是因为,全网域安装可让网域管理员向第三方和内部应用授予对用户数据的访问权限。只有组织管理员账号才能将应用添加到许可清单,以便在其网域中使用。
如需了解如何将应用设为全网域安装,请参阅常见问题解答我的应用有来自其他 Google Workspace 网域的企业账号用户。