Google 服务授权

Apps 脚本需要用户授权才能访问内置 Google 服务高级 Google 服务的私有数据。

授予访问权限

Apps 脚本会根据对代码的扫描自动确定授权范围(例如访问您的 Google 表格文件或 Gmail)。注释掉的代码仍可以生成授权请求。如果脚本需要授权,则运行过程中您会看到此处显示的一个授权对话框。

如果代码更改添加了新服务,您之前授权的脚本也会请求额外的授权。如果您将脚本作为脚本所有者的用户身份运行,并且以 Web 应用的形式访问脚本,则脚本可能不会请求授权。

撤消访问权限

要撤消脚本对您的数据的访问权限,请按以下步骤操作:

  1. 访问 Google 帐号的权限页面。(如需日后导航到此页面,请访问 Google.com,然后点击屏幕右上角的帐号头像。接下来,依次点击我的帐号、“登录与安全”部分下的关联的应用和网站,然后点击管理应用。)
  2. 点击要撤消授权的脚本的名称,点击右侧的移除,然后在出现的对话框中点击确定

脚本的权限和类型

运行脚本的用户身份(及其可访问的数据)因运行脚本的情况而异,如下表所示。

脚本类型 脚本运行方式...
独立插件 绑定到文档、表格、幻灯片或表单 使用键盘输入
电子表格中的自定义函数 匿名用户;但是,配额限制会计入键盘上的用户
Web 应用Google 协作平台小工具 是键盘或脚本所有者的用户,具体取决于部署应用时的所选选项
可安装的触发器 创建触发器的用户

Google 表格、文档、幻灯片和表单的手动授权范围

如果您要构建使用电子表格服务文档服务幻灯片服务表单服务插件或其他脚本,可以强制授权对话框仅请求访问使用该插件或脚本的文件,而不是用户的所有电子表格、文档或表单。为此,请在文件级注释中添加以下 JsDoc 注解:

/**
 * @OnlyCurrentDoc
 */

如果您的脚本包含声明 @OnlyCurrentDoc 的库,但主脚本实际需要访问的不仅仅是当前文件,则可以使用反向注释 @NotOnlyCurrentDoc

插件的授权生命周期

Google 表格、文档、幻灯片和表单的插件通常采用与文档绑定的脚本相同的授权模型。但在某些情况下,onOpen(e)onEdit(e) 函数会在未经授权模式下运行,这会带来一些额外的复杂性。如需了解详情,请参阅插件授权生命周期指南

OAuth 应用用户限制

使用 OAuth 访问 Google 用户数据的应用(包括 Apps 脚本项目)受授权限制的约束。如需了解详情,请参阅 OAuth 应用用户限制