如果您的应用请求使用 Google API 访问 Google 用户的数据,您可能需要先完成验证流程,然后才能首次公开发布应用。
此要求是否适用于您的应用,主要取决于以下两个因素:
- 您访问的用户数据类型,例如公开个人资料信息、日历条目、云端硬盘中的文件、某些健康与健身数据等。
- 您需要的访问权限级别,例如只读、读写等。
当您使用 OAuth 2.0 从 Google 账号获取访问其数据的权限时,您可以使用称为“范围”的字符串来指定您要代表其访问的数据类型。如果您的应用请求的范围属于敏感或受限类别,您可能需要完成验证流程,除非您的应用的使用情形符合例外情况。
敏感范围的示例包括:读取存储在 Google 日历中的活动、在 Google 通讯录中存储新联系人或删除 YouTube 视频。如需详细了解可用范围及其分类,请参阅应用调用的 API 端点的参考文档,以及为该 API 发布的任何相关授权指南。
您必须请求对提供该功能所需的用户数据具有最低访问权限的范围。例如,如果 API 及其相关端点有更窄的范围,那么仅读取数据的应用不得请求读取、写入和删除内容的权限。您从 Google API 接收的数据只能按照 API 的政策以及您在应用的操作和隐私权政策中向用户声明的方式使用。
在为应用或任何需要新范围的新功能制定发布计划时,请务必考虑完成验证所需的时间。敏感范围验证流程最多可能需要 10 天才能完成。请注意,您的应用可能符合品牌验证条件,可作为敏感范围验证请求的一部分。
了解敏感范围
敏感范围需要先经过 Google 审核,然后任何 Google 账号才能授予访问权限。Google Workspace 组织管理员可能会限制对敏感范围的访问权限,以防止组织未明确标记为受信任的 OAuth 客户端 ID 进行访问。
了解您的范围使用情况
- 查看您的应用正在使用或您希望使用的范围。如需查找现有的范围使用情况,请检查应用的源代码,看看是否有任何范围随授权请求一起发送。
- 确定每个请求的范围对于应用功能的预期操作都是必要的,并使用提供该功能所需的最小权限。Google API 通常会在产品的 Google Developers 页面上提供其端点的参考文档,其中包括调用端点或其中特定属性所需的范围。如需详细了解应用调用的 API 端点所需的访问权限范围,请参阅这些端点的参考文档。
- 您从 Google API 接收的数据只能按照 API 的政策以及您在应用的操作和隐私权政策中向用户说明的方式使用。
- 请参阅 API 文档,详细了解每个范围,包括其潜在的敏感或受限状态。
- 在 Cloud 控制台的“数据访问”页面中声明应用使用的所有范围。您指定的范围会归入敏感或受限类别,以突出显示所需的任何其他验证。
- 找到与集成所用数据匹配的最佳范围,了解其用途,重新确认在测试环境中一切仍能正常运行,然后准备提交验证。
验证准备步骤
所有使用 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 登录所需的一组初始范围。添加的范围分为非敏感、敏感或受限。
最多可以提供三个指向应用中相关功能的相关文档的链接。
在后续步骤中,提供系统要求的关于您应用的所有其他信息。
- 针对每个请求的敏感范围准备详细的理由,并说明为什么较窄的范围不够。例如:“我的应用将使用
https://www.googleapis.com/auth/calendar在应用的日程安排界面上显示用户的 Google 日历数据。这样,用户就可以通过我的应用管理其日程安排,并将更改同步到其 Google 日历。” - 准备一个视频,完整演示用户如何发起和授予对所请求范围的访问权限,并详细展示应用中已授予的敏感和受限范围的使用情况。将视频上传到 YouTube 工作室,并将其公开范围设置为不公开列出。您需要在 YouTube 链接字段中提供演示视频的链接。
- 以英文展示用户将经历的 OAuth 授权流程。 这包括意见征求流程,如果您使用 Google 登录,还包括登录流程。
- 显示 OAuth 权限请求页面正确显示了应用名称。
- 显示 OAuth 权限请求页面的浏览器地址栏中正确包含应用的 OAuth 客户端 ID。
- 为了展示数据的使用方式,请演示您请求的每个敏感范围所启用的功能。
- 针对每个请求的敏感范围准备详细的理由,并说明为什么较窄的范围不够。例如:“我的应用将使用
在您发布品牌信息或提交数据访问请求后,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 网域的企业账号用户。