原文標題:GitHub Actions workflow lockfiles in public preview

GitHub 10 月 14 日宣布 GitHub Actions 工作流程依賴鎖定檔進入公開預覽。GitHub 說明,工作流程引用第三方 Action 的標籤或分支時,維護者可能在程式審查完成後移動該參照,使後續 CI/CD 執行不同的程式碼。新的鎖定檔會記錄已審查的 commit,讓實際執行固定使用該版本,降低無預警的依賴變更風險。

開發者可安裝 GitHub CLI 的 gh actions-lock 擴充套件,產生 .github/workflows/actions.lock,包含直接 Action、轉接依賴與可重用工作流程的 commit 參照。團隊可逐個工作流程導入;一旦某個工作流程採用鎖定檔,執行時所需依賴都必須在鎖定檔中,且 GitHub Actions 會採用記錄的 commit,即使標籤或分支日後被移動也不改變。

GitHub 同時提供 Require lockfile 管理政策的公開預覽,企業、組織與儲存庫管理員可要求工作流程使用鎖定檔。Dependabot 在更新已採用鎖定檔的工作流程 Action 時,也會在同一個 Pull Request 更新對應鎖定資訊,避免依賴版本與鎖定檔脫節。另可在 CI 中檢查鎖定檔是否過期,而不直接修改內容。

這項預覽支援 GitHub Enterprise Cloud、含資料落地版本、Team 與 Free 方案。GitHub 強調鎖定檔只確保執行版本與審查版本一致,無法證明被鎖定的第三方程式碼本身安全,團隊仍須檢查供應商、版本與權限。

發生了什麼事

GitHub Actions 加入依賴鎖定檔,讓 CI 工作流程執行固定 commit,而非直接信任可移動的標籤。

為什麼重要

工作流程依賴一旦遭惡意更新,可能在不改變主專案原始碼的情況下執行攻擊程式;鎖定檔降低這種供應鏈變動風險。

影響哪些人

使用 GitHub Actions 的開發者、開源專案維護者與負責 CI/CD 安全治理的企業團隊。

已確認與未確認

已確認功能仍為公開預覽且支援多種 GitHub 方案;不能把鎖定檔等同於漏洞掃描或惡意程式防護。