相依套件¶
本頁說明相依套件清冊、弱點監控、相依套件分流處理及容器弱點掃描。已發佈版本產物的 SBOM、簽章及來源證明,請參閱 發行成品與驗證。
相依套件清冊¶
Weblate 的相依套件資訊維護於數個儲存庫檔案中:
Python 相依套件宣告於
pyproject.toml,並在uv.lock中解析。前端相依套件宣告於
client/package.json,並在client/yarn.lock中解析。隨附的前端程式庫及產生的授權資料記載於 子專案與嵌入程式碼。
Weblate 版本的發行 SBOM 會依 軟體物料清單 所述加以公開。
Docker 映像及 Helm 圖表的相依套件,維護於 發行產物清冊 所列、由 Weblate 擁有的 Docker 與 Helm 儲存庫中。
pyproject.toml 中的相依套件範圍說明支援的執行階段需求。鎖定檔案則說明 CI 與發行自動化所使用的已測試相依套件組合。
追蹤相依套件弱點¶
Weblate 相依套件的安全性問題會透過 Renovate、GitHub 相依套件審閱、FOSSA、發行 SBOM 及容器弱點掃描進行監控。
Weblate 儲存庫會擴充 WeblateOrg/meta 的共用 Renovate 預設集。該預設集會啟用相依套件控制台、OSV 弱點警示、平台弱點警示、語意化相依套件提交,以及適用於 GitHub Actions、Dockerfile、Helm 圖表應用程式版本與其他已固定工具版本的 Renovate 自訂管理程式。它也會設定選取的套件分組、排程及自動合併行為。
此儲存庫會新增 main 與 stable 作為 Renovate 基底分支。stable 上會停用一般相依套件更新及鎖定檔案維護;Weblate 發行版本的安全性更新涵蓋範圍請參閱 安全更新。
GitHub 相依套件審查會在 Pull Request 上執行,以便在合併前顯示相依套件變更。FOSSA 會在推送至 main 時執行,並將掃描及政策測試結果記錄於 FOSSA 服務。
相依套件漏洞分類¶
當 Renovate、GitHub 相依套件審查、FOSSA、發行 SBOM 審查、容器掃描或弱點回報指出相依套件弱點時,維護者會評估該弱點是否影響 Weblate。分流處理時會檢查下列項目:
受影響的相依套件及版本是否由 Weblate、已發佈的版本產物或受維護的部署產物使用;
可否透過受支援的 Weblate 功能或部署模式觸及含有弱點的程式碼路徑;
問題是出自 Weblate 使用相依套件的方式,或應回報給上游專案;
是否需要更新相依套件、變更設定、採取緩解措施、發佈公告,或進行 Weblate 安全性更新。
提示
在第三方庫中可能存在漏洞,不會影響WebLate,因此不會通過釋放釋放的WebLate的錯誤文件來解決這些內容。
相依套件和 lockfile 維護¶
Python 鎖定檔案由 uv lock update 工作流程維護。前端相依套件鎖定檔案及隨附的前端檔案,則由 yarn update 工作流程維護。
產生的維護變更會交由 Apply maintenance patch 工作流程處理。該工作流程只會套用經過驗證的修補產物,並限制各維護工作流程允許更新的路徑。
Docker 容器安全¶
在 CI 中會對 Weblate 和 Weblate 客戶端 Docker 容器進行安全漏洞掃描。這使我們能夠及早發現漏洞並快速釋出改進措施。
受檢查的 Weblate Docker 與 Weblate Client 工作流程會使用 Anchore 及 Trivy 掃描建置完成的容器映像。結果會以 SARIF 資料上傳至 GitHub 程式碼掃描。受檢查的工作流程也會儲存 Trivy SARIF 產物,而 Weblate Client 工作流程則會儲存 Anchore SARIF 產物。
已知的外部政策細節¶
部分相依套件及弱點管理細節維護於本說明文件之外:
完整的 Renovate 行為定義於共用的 WeblateOrg/meta 預設集及儲存庫平台設定中;
GitHub 相依套件圖表、Dependabot 警示及分支保護狀態屬於 GitHub 平台設定;
FOSSA 結果歷程及政策臨界值儲存於 FOSSA;
掃描程式輸出儲存於 GitHub 程式碼掃描及工作流程產物中。