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