您可以部署一个表格插件并将其 运行 作为管理员或服务帐户吗?

Can you deploy a Sheets addon and run it as an admin or service account?

我创建了一个 sheets 侧边栏插件,它允许用户 select 一个组并根据 sheet 中的列更新成员。

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

这是我作为普通 G Suite 用户尝试 运行 时出现的错误 - "GoogleJsonResponseException: API call to directory.members.delete failed with error: Not Authorized to access this resource/api"

成员=AdminDirectory.Members.remove(str, userEmail);要么 成员 = AdminDirectory.Members.insert(成员, 海峡);

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

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

遗憾的是,您不能向用户运行授予该用户没有的附加组件权限。

如果你想让用户运行脚本,你需要从User Admin Console.

分配他/他的组织单位各自的角色或权限

我建议您 create a custom administrator role 仅向用户授予他们 运行 插件所需的权限。

如果您正在使用服务帐户查看 运行ning Apps 脚本,则需要安装 OAuth2 library 并使用 JSON 请求执行 UrlFetchApp.fetch() 调用.