Kubernetes 驗證簽名的容器鏡像

2022-06-06 10:53 更新

驗證簽名的容器鏡像

FEATURE STATE: Kubernetes v1.24 [alpha]

在開始之前

這些說明適用于 Kubernetes 1.24。 如果要檢查不同版本 Kubernetes 的組件完整性,請查看該 Kubernetes 版本的文檔。

您將需要安裝以下工具:

  • ?cosign?(安裝指南
  • ?curl?(通常由您的操作系統(tǒng)提供)

驗證圖像簽名

讓我們從該列表中選擇一個圖像并使用 ?cosign verify? 命令驗證其簽名:

COSIGN_EXPERIMENTAL=1 cosign verify k8s.gcr.io/kube-apiserver-amd64:v1.24.0

Note:?COSIGN_EXPERIMENTAL=1? 用于允許驗證以 ?KEYLESS ?模式簽名的圖像。 要了解有關(guān)無密鑰簽名的更多信息,請參閱無密鑰簽名。

驗證所有控制平面組件的映像

要驗證所有已簽名的控制平面映像,請運行以下命令:

curl -Ls https://sbom.k8s.io/$(curl -Ls https://dl.k8s.io/release/latest.txt)/release | grep 'PackageName: k8s.gcr.io/' | awk '{print $2}' > images.txt
input=images.txt
while IFS= read -r image
do
  COSIGN_EXPERIMENTAL=1 cosign verify "$image"
done < "$input"

驗證映像后,請按照以下示例在 Pod 清單中通過其摘要指定該映像:?registry-url/image-name@sha256:45b23dee08af5e43a7fea6c4cf9c25ccf269ee113168c19722f87876677c5cb2?。

使用準入控制器驗證圖像簽名

對于非控制平面圖像(例如一致性圖像),簽名也可以在部署時使用聯(lián)合簽名準入控制器進行驗證。 要開始共同簽名,這里有一些有用的資源:


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號