自有Google Sheets App Script访问被谷歌权限拦截,如何解决?
Google Apps Script 敏感信息访问拦截报错解决方案
完整报错内容:
This app tried to access sensitive info in your Google Account. To keep your account safe, Google blocked this access.
首先明确:普通个人Google账号的「低安全性应用访问」选项已在2022年5月30日全面下线,关闭两步验证、开启低安全性应用访问的操作对Apps Script的权限拦截完全无效,无需再测试这两个配置的生效时间。
以下是可落地的解决方案:
- 调整OAuth授权范围配置
打开你的Apps Script项目,点击左侧齿轮形「项目设置」图标,勾选「在appsscript.json清单中显示"appsscript.json"编辑器」,返回代码编辑页打开自动生成的appsscript.json文件,补充明确的表格访问权限范围,示例配置如下:
保存后重新运行脚本按引导完成授权即可。{ "timeZone": "Asia/Shanghai", "dependencies": {}, "oauthScopes": [ "https://www.googleapis.com/auth/spreadsheets" ], "runtimeVersion": "V8" } - 完成未验证应用的特殊授权流程
重新运行脚本触发授权弹窗,选择你要授权的Google账号,当出现「Google 尚未验证此应用」的提示页时,点击页面左下角的「高级」按钮,再点击「前往[你的项目名称](不安全)」,按后续提示完成全部权限授予即可正常运行脚本。 - 替换跨表格访问方法减少权限需求
如果你的Apps Script项目是直接从目标Google Sheets表格的「扩展程序>Apps Script」入口创建的绑定项目,可直接将代码中的SpreadsheetApp.openByUrl(url)替换为SpreadsheetApp.getActiveSpreadsheet(),无需额外申请跨表格访问权限,可直接规避大部分权限拦截问题。 - Google Workspace账号联系管理员配置
如果你使用的是企业/组织的Google Workspace账号而非个人账号,可联系Workspace管理员在后台将你的Apps Script项目添加到内部可信应用列表,无需额外的公开应用验证即可在组织内部正常使用。
内容的提问来源于stack exchange,提问作者Yen
相关产品推荐
相关产品推荐

