【发布时间】:2021-01-09 21:24:07
【问题描述】:
我正在构建一个类似于持续交付服务的多租户 SaaS,我需要基于该服务用户提供的源代码和 Dockerfile 构建一个 Docker 映像(该用户不是组织的一部分,并且无论如何都不能被信任)。
例如:
- 该服务的用户连接他自己的 Git 存储库
- 我们的 SaaS 将源代码(Ruby、JavaScript 等)下载到服务器并生成 Docker 映像作为输出
- docker 镜像已部署
但是我对步骤 (2) 有严重的安全问题... 在服务器上是否有任何安全的方法可以在不受信任的 Dockerfile/代码上执行 docker build?
是否有任何配置选项可以使 Docker 安全?
是否有任何不同于docker build 的工具允许在共享环境(即多租户SaaS 的服务器)中安全地构建OCI 映像?
是否有任何 SaaS 已经允许您代表您的 SaaS 构建第三方代码?
否则,每次我需要构建 Docker 映像时,我都应该启动并删除一个 VM(例如 DO droplet、EC2 等)……但这似乎更复杂。
你有什么建议吗?你知道 CircleCI 或 Travis 使用什么策略来构建/运行不受信任的代码吗?
【问题讨论】:
标签: docker security saas continuous-delivery