如何防止 clasp 克隆/拉“仅查看”Google Apps 脚本项目

问题描述 投票:0回答:1

我有“发布者”帐户创建的 Google Apps 脚本项目,并作为“仅查看”共享:

1. Editors can change permissions and share - set to false
2. Viewers and commenters can see the option to download, print, and copy - set to false
3. Anyone on the internet with this link can view

从另一个“消费者”帐户,应该能够:

a) 将项目导入为库和

b) 使用项目端点

当我使用在线编辑器时,一切看起来都很好:

“复制”菜单项被禁用。

“显示清单文件”不显示 appsscript.json


但是,“消费者”帐户可以使用 clasp(带有脚本 ID)克隆项目、拉取特定版本、下载清单文件、读取项目属性和依赖项等

clasp clone script_id
clasp pull --versionNumber 2

注意:我什至创建了“发布者”帐户不使用clas作为已批准的应用程序。

Q1:我错了吗,这个貌似可以通过clasp绕过“保护系统”?

Q2:这是一个已知的错误/功能/问题,我找不到它,我想投票吗?

Q3:如果你想把图书馆项目分享给客户,也许你可以做一个“隐藏”业务逻辑的子图书馆项目。看起来 clasp 可以下载顶级共享项目的清单文件,然后所有子库也变得不受保护,清单文件显示了它们的脚本 ID。有没有一些标准的方法来完成这样的事情?

谢谢你,很抱歉发了这么长的帖子。

google-apps-script libraries readonly data-protection clasp
1个回答
2
投票

问题:

官方帮助中心页面所写,

重要提示:您可以限制人们在 Google 云端硬盘、文档、表格和幻灯片中共享、打印、下载和复制的方式,但您无法阻止其他人以其他方式共享文件内容的方式。

特点

查看者和评论者可以看到下载、打印和复制的选项

仅禁用用户界面按钮并防止在应用程序内复制。它不会阻止用户

  • 直接复制他们看到的内容到剪贴板
  • 使用各自的apis复制

或任何其他方法。

解决方案:

目前唯一推荐的隐藏脚本项目的方法是发布插件 #7。如果那不是一个选项,您可以尝试基本的 JavaScript 混淆/缩小。

问题跟踪器:

© www.soinside.com 2019 - 2024. All rights reserved.