软件部署安全与架构优化指南
一、保障部署安全
(一)确保操作安全
GitHub Actions 功能强大,但它本质上是可执行的代码,并且会访问你的资源。因此,在选择操作时务必谨慎,特别是在使用自托管运行器的情况下。虽然来自 GitHub、Microsoft、AWS 或 Google 等可信来源的操作相对可靠,但由于它们也接受拉取请求,仍存在安全漏洞潜入的风险。以下是使用 Actions 的最佳实践:
1. 审查代码 :始终审查操作的代码,同时查看所有者、贡献者数量、提交次数和日期、星标数量等指标,以确保该操作来自一个活跃健康的社区。
2. 明确引用 :使用明确的提交 SHA 来引用操作。因为 SHA 是不可变的,而标签和分支可能会被修改,从而导致你在不知情的情况下执行新的代码。
3. 审批协作 :如果你使用的是派生仓库,要求所有外部协作者的更改都经过审批,而不仅仅是首次贡献者。
4. 保持更新 :使用 Dependabot 来保持操作的更新。
如果你使用自托管运行器,则需要更加严格地限制可使用的操作,有以下两种选择:
1. 仅允许本地操作 :创建你已分析过的操作的派生仓库,并引用该派生仓库。这种方法虽然需要额外的工作,但能让你完全控制所使用的操作。你还可以将这些操作添加到本地市场,以便更方便地发现它们。
2. 白名单选择 :允许来自 GitHub 的特定操作,并列出允许的操作列表(白名单)。你
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



