您可以部署 Sheets 插件并以管理员或服务帐户身份运行它吗?



我创建了一个工作表侧边栏插件,允许用户选择一个组并根据工作表中的列更新成员。

当我以我的管理员帐户运行它时,一切正常; 但是,当普通的G Suite用户运行插件时,他们会遇到问题,因为我用来将用户添加到组的api是Admin SDK目录。

这是我尝试以普通G Suite用户身份运行时的错误 - "GoogleJsonResponseException:对directory.members.delete的API调用失败,出现错误:无权访问此资源/api">

member = AdminDirectory.Members.remove(str, userEmail(; 或member = AdminDirectory.Members.insert(member, str(;

如果我部署为以管理员身份运行,这在 Web 应用程序中工作正常。

任何指导或提示将不胜感激。

很遗憾,您无法授予运行该用户没有的附加组件权限。

如果您希望用户运行脚本,则需要从用户管理控制台为其/他的组织单位分配各自的角色或权限。

我建议您创建一个自定义管理员角色,仅向用户授予运行插件所需的权限。

如果您正在考虑使用服务帐户运行应用程序脚本,则需要安装 OAuth2 库并使用 JSON 请求执行UrlFetchApp.fetch()调用。

最新更新