Astral开源安全实践:多维度保障工具安全与供应链稳定

张开发
2026/5/4 21:57:38 15 分钟阅读
Astral开源安全实践:多维度保障工具安全与供应链稳定
【导语在供应链攻击频发的背景下Astral分享了保障工具安全的技术。通过对CI/CD、仓库组织、自动化、发布及依赖等多方面的安全实践为开发者和行业提供了可借鉴的安全方案。】CI/CD安全规避风险与增强可控性Astral通过大量在GitHub Actions上运行的CI/CD工作流维持工具开发速度同时将其作为安全策略关键部分。但GitHub Actions安全默认设置较差存在诸多安全漏洞事件。Astral采取了一系列措施保障安全如禁止危险触发像禁止使用pull_request_target和workflow_run多数情况可用pull_request替代固定操作版本要求操作固定到特定提交并交叉检查限制权限在组织层面默认只读工作流从permissions: {}开始隔离秘密利用GitHub设置及相关工具。仓库与组织安全多规则降低攻击风险为降低Astral组织内账户和仓库被攻击的可能性和影响采取了多项措施。限制特权账户数量减少攻击者目标强制使用强2FA要求成员使用不弱于TOTP的方法实施分支保护规则禁止强制推送main分支更改禁止特定分支模式实施标签保护规则防止提前创建发布标签禁止更新或删除标签禁止管理员绕过保护所有保护在组织层面强制执行。自动化GitHub App模式的利弊对于GitHub Actions无法安全完成的任务如在第三方问题和拉取请求上留言Astral使用astral - sh - bot将任务隔离在GitHub Actions之外。GitHub App虽能减少隐式状态但仍存在安全风险开发需用安全思维。其主要缺点是复杂性开发和托管有成本但像Gidgethub框架使开发相对简单。目前个人和业余开源项目缺乏好的GitHub App选项。发布安全多环节保障工具发布Astral考虑到多种分发渠道采取了一系列发布安全措施。使用可信发布消除长期注册表凭证需求生成Sigstore证明建立工件与工作流的加密链接使用不可变发布防止构建被事后修改避免缓存防止缓存投毒攻击加强发布流程保护包括隔离发布环境、双人批准机制、标签保护规则验证安装程序完整性。未来还计划在macOS和Windows上使用官方开发者证书进行代码签名。编辑观点Astral的开源安全实践全面且细致涵盖了开发、发布等多个环节。其方法对开发者和行业有借鉴意义有助于提升整体安全水平但部分措施实施成本较高需根据实际情况灵活运用。

更多文章