2

我们有 100 多个用户,我们为他们一一创建了一个谷歌电子表格,并要求他们在电子表格中输入原始数据。

当前的工作流程是我们有一个程序可以将电子表格一张一张地导出到 CSV 文件中,然后将它们导入我们的后端系统。没关系。

现在,我们了解到 Google Apps 脚本可能是一个更好的解决方案,例如用户可以通过“插件 -> 获取插件”在电子表格中发现插件,因此我们可以创建多个功能并完全自动化通过调用我们的 API 进行导入过程,例如验证、试运行、导入等。

问题:

  • 我们将不断更新应用程序脚本中的功能,因此我们不想每次都更新所有这 100 多张文档。
  • 我们不希望所有公共用户都可以安装在插件中,只有我们的客户(他们有 Google auth)

  • 如果我们可以保护用户不查看/修改我们的脚本会更好

他们有可能吗?

目前我认为最好的方法是创建一个新的库项目并将大部分代码放入其中,并创建一个使用该库的容器绑定应用程序脚本。有更好的办法吗?

4

2 回答 2

0

附加组件将满足您在保护代码和允许更新方面的要求,但目前它们需要发布到附加组件商店。解决此问题的方法是在您的插件中包含一个功能,这意味着只有列入白名单的用户或工作表才能拥有插件的全部功能。白名单可以通过像主电子表格这样简单的东西来维护。鉴于所有插件都需要得到 Google 的批准,他们可能会认为限制其使用对插件理念有害,因此不会发布您的插件。

编辑:当插件被谷歌批准时,有可见性选项来限制访问。根据附加发布步骤 #12:

在“可见性选项”部分,选择哪些用户可以找到您的插件 - 通常是所有用户或只有在您的 Google Apps 域中拥有帐户的用户。

还为具有白名单和发布权限的 Google Apps 域的 Google Add-on 商店打开了功能请求[/edit]

替代解决方案在很大程度上取决于您的用例。例如,如果 100 多张工作表用于数据收集并且不需要额外的 Apps 脚本支持功能,您可以使用其文档 ID 查询工作表并从中提取数据。即使具有基本视图访问权限,也必须与您共享单个工作表。

托管库是另一种选择,但鉴于用户需要对库的读取权限,并且如果进行了更改,则必须手动更新库版本,这不适合您的情况。

于 2014-07-14T22:02:53.897 回答
0

附加组件用户无法看到其代码,一旦发布新版本,它将自动部署到已安装它的所有用户以及启用附加组件的所有文档。

我们可以通过选择“未列出”或“私人”以某种方式限制附加组件的可见性,但如果共享使用附加组件的文档,文档编辑者可以安装该附加组件,因此为了强制执行谁拥有对附加功能的访问我们应该以某种方式将附加功能的访问列入白名单。

我们可以硬编码白名单,使用属性服务或设置检查外部白名单的方法。

于 2018-06-04T00:37:41.897 回答