同域用户跨Apps Script调用API Executable返回403权限错误怎么解决
解决域内用户调用Apps Script API Executable 403权限错误的配置步骤
- 第一步:共享API Executable对应的Apps Script项目权限
仅配置API Executable的部署访问权限不足以正常调用,需要打开作为API Executable部署的Apps Script项目,点击右上角「共享」按钮,将域内用户的权限设置为至少查看者级别。如果需要保留devMode=true的调用配置,需要给域内用户开放编辑者权限(devMode要求调用者拥有脚本编辑权限才能访问未发布的最新代码)。 - 第二步:调整调用参数与部署版本
如果不需要调用最新的未部署代码,将调用payload里的devMode改为false,同时重新部署API Executable生成新的正式版本,使用新版本的部署ID进行调用,避开devMode的额外权限限制。 - 第三步:确认OAuth作用域配置
调用方的Apps Script需要在appsscript.json清单文件中显式声明所需的全部作用域,必须包含:
同时确保两边脚本使用的账号都属于同一个企业域,没有跨域权限限制。"oauthScopes": [ "https://www.googleapis.com/auth/script.external_request", // 补充目标API Executable需要的其他作用域,比如表格操作对应的spreadsheet类作用域 "https://www.googleapis.com/auth/spreadsheets" ] - 第四步:核对GCP项目配置
检查API Executable绑定的GCP项目中,Google Apps Script API已经处于启用状态,同时企业域管理员没有配置限制Apps Script API调用的组织政策。 - 第五步:确认关联资源权限
代码中涉及的目标电子表格,也需要给调用的域内用户开放至少查看者权限,避免执行到业务代码时触发权限不足的问题。
内容的提问来源于stack exchange,提问作者miturbe
相关产品推荐
相关产品推荐

