- 不是 xy 问题,无法转换
- 设计就是为了某种实现而需要传脚本
- 脚本执行需要返回一个值就行(也就是这个脚本是孤立的)
- 非开放给用户使用,仅仅是作为内部某种实现的使用(会有隔离)
- 在这个前提下,是不是使用 Worker 能最大限度的保证安全?
1
libook Apr 2, 2021 你需要一个 Sandbox,Worker 的功能虽然有一定的限制,但是远不及 Sandbox 的那种程度,一旦运行脚本就意味着 Worker 能调用的所有 API 都可能会被调用。
你可以看看 Deno,它的产品定位就是一个 Sandbox,我没用过,也一直觉得它“未来会取代 Node”的宣传很扯淡,但至少 Sandbox 的老本行可以一试。 或者你可以去研究一下其他的 Sandbox 方案。 另外你也可以考虑用容器之类的封装一个专门用来跑不确定安全性的脚本的实例,用有限的 API 跟主应用程序互操作就行。 |
2
zhuweiyou Apr 2, 2021
|
3
xcstream Apr 8, 2021
独立进程更加安全
|