Apps Script Library 安全问询:导入库的用户能否获取库内源代码?
Apps Script Library 源代码泄露风险与安全性说明
核心结论
只要你配置正确的共享权限,调用方无法获取你开发的库的内部源代码,你的方案是可行的。
具体权限规则说明
- 当你给库设置的共享权限仅为查看者权限时,调用方只能调用你暴露的公开函数,无法访问库的项目后台,也无法通过打印、反编译等常规手段获取函数内部的代码实现、硬编码的敏感信息,你测试得到的
[Function]返回结果就是沙箱封装的正常表现。 - 仅当你给调用方开放了库的编辑者权限时,对方才能进入Apps Script项目后台直接查看所有源码,这种场景下才会出现敏感信息泄露风险。
额外安全加固建议
为了进一步避免你的数据库表格信息泄露,你可以额外做以下配置:
- 不要在库代码中硬编码数据库表格ID,将这类敏感值存到脚本属性中,通过
PropertiesService.getScriptProperties().getProperty('DB_TABLE_ID')的方式调用,避免代码泄露时直接暴露敏感信息。 - 单独设置数据库表格的访问权限,仅允许你自己(或库对应的运行账号)拥有该表格的读写权限,业务侧用户即使意外拿到表格ID,也没有权限访问表格内容。
- 所有对数据库表格的操作都封装在库内部完成,仅向调用方返回业务需要的结果,不要在返回值、报错信息中透漏数据库表格的ID、链接等信息。
内容的提问来源于stack exchange,提问作者user12457151
相关产品推荐
相关产品推荐

