軟體物料清單 (SBOMs)
什麼是 SBOM?
SBOM 是一份詳細的清單,列出了建構軟體應用程式時所使用的所有元件、函式庫與依賴項。它透過記錄每個元件的版本、來源及其與其他元件之間的關係,為軟體供應鏈提供透明度。您可以將其視為軟體的「食譜」,詳盡列出所有成分及其結合方式。
用於描述軟體成品的 SBOM 元數據可能包括:
- 成品名稱
- 版本
- 授權類型
- 作者
- 唯一套件識別碼
為什麼 SBOM 很重要?
在現今的軟體環境中,應用程式通常包含來自各種來源的大量元件,包括開源函式庫、第三方服務與專有程式碼。這種複雜性可能會掩蓋對潛在漏洞的能見度,並使合規工作變得複雜。SBOM 透過提供應用程式內所有元件的詳細清單,解決了這些挑戰。
SBOM 的重要性由幾個關鍵因素所強調:
增強透明度:SBOM 提供構成應用程式之所有元件的全面檢視,使組織能夠識別並評估與第三方函式庫及依賴項相關的風險。
主動漏洞管理:透過維護最新的 SBOM,組織可以迅速識別並處理軟體元件中的漏洞,縮短潛在攻擊的曝險窗口。
監管合規性:許多法規與產業標準現在要求組織必須對其使用的軟體元件保持控管。SBOM 透過提供清晰且易於存取的紀錄,促進了合規性。
改善事件回應:在發生安全漏洞時,SBOM 使組織能夠快速識別受影響的元件並採取適當行動,從而將潛在損害降至最低。
Docker 強固映像檔 SBOM
Docker 強固映像檔隨附內建的 SBOM,確保映像檔中的每個元件都經過記錄且可供驗證。這些 SBOM 經過加密簽章,為映像檔內容提供了防篡改的紀錄。此整合簡化了稽核流程,並增強了對軟體供應鏈的信任。
檢視 Docker 強固映像檔中的 SBOM
若要檢視 Docker 強固映像檔的 SBOM,您可以使用 docker scout sbom 指令。請將 <image-name>:<tag> 取代為您的映像檔名稱與標籤。
$ docker scout sbom <image-name>:<tag>
驗證 Docker 強固映像檔的 SBOM
由於 Docker 強固映像檔隨附經簽章的 SBOM,您可以使用 Docker Scout 來驗證附於映像檔上的 SBOM 真實性與完整性。這可確保 SBOM 未遭到篡改,且映像檔內容值得信賴。
若要使用 Docker Scout 驗證 Docker 強固映像檔的 SBOM,請使用下列指令:
$ docker scout attest get <image-name>:<tag> \
--predicate-type https://scout.docker.com/sbom/v0.1 --verify --platform <platform>
例如,若要驗證 dhi/node:20.19-debian12-fips-20250701182639 映像檔的 SBOM 證明:
$ docker scout attest get docs/dhi-node:20.19-debian12-fips-20250701182639 \
--predicate-type https://scout.docker.com/sbom/v0.1 --verify --platform linux/amd64
資源
如需有關 SBOM 證明與 Docker Build 的詳細資訊,請參閱 SBOM 證明 (SBOM attestations)。
若要進一步了解 Docker Scout 與 SBOM 的使用方式,請參閱 Docker Scout SBOM。