OAuth 客户端验证

请求某些敏感 OAuth 范围的 Google OAuth 客户端需要接受 Google 的验证。

如果您未验证脚本项目的 OAuth 客户端,则网域外部用户尝试对您的脚本授权时,会看到未经验证的应用屏幕。借助未经验证的授权流程,这类用户可以授权未经验证的应用并使用这些应用,但前提是他们必须确认自己了解相关风险。未经验证的应用用户总数也设有上限。

详情请参阅以下文章:

 

未经验证的应用屏幕
图 1:未验证的应用屏幕
未经验证的应用授权流程
图 2:未经验证的应用授权流程

 

这项变更适用于 Google OAuth Web 客户端,包括所有 Apps 脚本项目使用的客户端。通过通过 Google 验证您的应用,您可以从授权流程中移除未经验证的应用屏幕,让用户确信您的应用是非恶意的。

未经验证的应用

插件、Web 应用和其他部署(例如使用 Apps Script API 的应用)可能需要进行验证。

适用性

如果应用使用敏感的 OAuth 范围,授权流程中可能会显示未经验证的应用屏幕。其是否存在(以及由此产生的未经验证的应用授权流程)取决于发布应用所用的帐号以及尝试使用该应用的帐号。例如,在特定 Google Workspace 组织中发布的应用不会为该网域中的帐号启动未经验证的应用授权流程,即使应用尚未验证也是如此。

下表说明了哪些情况会导致未经验证的应用授权流程:

客户已通过验证 发布商是客户 A 的 Google Workspace 帐号 脚本位于客户 A 的共享云端硬盘中 发布商是 Gmail 账号
用户是客户 A 的 Google Workspace 帐号 常规身份验证流程 常规身份验证流程 常规身份验证流程 未经验证的身份验证流程
用户是不属于客户 A 的 Google Workspace 帐号 常规身份验证流程 未经验证的身份验证流程 未经验证的身份验证流程 未经验证的身份验证流程
用户使用的是 Gmail 帐号1 常规身份验证流程 未经验证的身份验证流程 未经验证的身份验证流程 未经验证的身份验证流程

1任何 Gmail 帐号,包括用于发布应用的帐号。

用户数上限

为了限制可能存在的滥用行为,可以通过未经验证的应用流程向应用授权的用户数设有上限。如需了解详情,请参阅 OAuth 应用用户限制

正在请求验证

您可以请求对您的应用及其关联的 Cloud Platform (GCP) 项目使用的 OAuth 客户端进行验证。您的应用通过验证后,您的用户将不会再看到未经验证的应用屏幕。此外,您的应用将不再受用户数上限限制。

要求

如需提交 OAuth 客户端进行验证,您必须满足以下要求:

  1. 您必须在某个网域上拥有一个网站。网站必须托管可公开访问的页面,其中说明了您的应用及其隐私权政策。您还必须向 Google 验证您对网站的所有权

  2. 您的脚本项目使用的 Google Cloud 项目必须是您拥有修改权限的标准 Google Cloud 项目。如果您的脚本使用的是其默认的 Google Cloud 项目,则必须切换到标准 Google Cloud 项目

此外,您还必须有以下必需素材资源:

  • 应用名称。应用的名称;此名称显示在同意屏幕上。该名称应与其他位置的应用名称一致,例如 Google Workspace Marketplace 中已发布应用的清单。
  • 应用徽标。要在同意屏幕中使用的应用徽标 JPEG、PNG 或 BMP 图片。其文件大小不得超过 1MB。
  • 支持电子邮件地址。此电子邮件地址会显示在同意屏幕上,供用户在需要应用支持时联系。它可以是您的电子邮件地址,也可以是您拥有或管理的 Google 群组。
  • 作用域。您的应用使用的所有范围的列表。您可以在 Apps 脚本编辑器中查看您的范围
  • 已获授权的网域。这是网域列表,其中包含应用的相关信息。应用的所有链接(例如其必需的隐私权政策页面)都必须托管在已获授权的网域上。
  • 应用首页网址。描述您的应用的首页的位置。此位置必须托管在已获授权的网域上。
  • 应用隐私权政策网址。说明应用隐私权政策的页面的位置。此营业地点必须托管在已获授权的网域上。

除上述必需的资源之外,您还可以选择提供一个应用服务条款网址,该网址指向介绍您的应用服务条款的页面。如果提供,此位置必须位于已获授权的网域中。

步骤

  1. 验证您用于托管脚本项目的隐私权政策和其他信息的所有授权网域的所有权(如果您尚未执行此操作)。 经过验证的网域所有者必须是脚本项目的编辑者或所有者。
  2. 在 Apps 脚本项目中,点击概览 。在 Project OAuth Scopes(项目 OAuth 范围)下,复制脚本项目使用的范围。
  3. 使用您收集的文本和网址资源为应用的 Google Cloud 项目填写 OAuth 权限请求页面

    1. 列出托管您应用的信息(例如隐私权政策)的授权网域
    2. 如需添加应用范围,请点击添加或移除范围。随即显示的对话框会尝试自动检测您在 Google Cloud 控制台中启用的 API(如高级服务)的范围。您可以通过勾选相应复选框从此列表中选择范围。

      这个自动检测到的列表并不一定包含 Apps 脚本内置服务使用的范围。您必须在手动添加范围下输入这些范围。

      完成后,点击更新

  4. 输入所有必填信息后,点击保存

  5. 点击提交验证以启动验证请求。

大多数验证请求会在 24 到 72 小时内收到回复。您可以在 OAuth 同意屏幕表单的顶部查看验证状态。确认 OAuth 客户端验证后,应用便会通过验证。