镜像验签
操作场景
容器镜像服务是通过swr-cosign插件实现镜像签名验证的,使用镜像验签功能需要安装swr-cosign插件即可。下面介绍如何安装验签插件swr-cosign。
操作步骤
- 登录云容器引擎CCE控制台。
- 在左侧导航栏上单击“插件市场”。
- 在插件市场页面上方搜索框输入“cosign”并搜索。
- 在下方的搜索结果中找到“容器镜像签名验证”插件,单击“安装”。
- 填写“安装插件”页面的相关参数。
- 选择集群:选择镜像所在集群。该插件只能在K8S V1.23及以上版本集群上安装。
对集群某个命名空间进行镜像验签时,需要先为该命名空间添加 policy.sigstore.dev/include:true 标签。
- 选择版本:选择插件版本
- 规格配置
- 单仓库:当前插件只支持在1个仓库上使用。
- 高可用:当前插件支持在2个仓库上使用。
- 自定义:自定义仓库数、CPU配额、容器配额。
表1 swr-cosign插件规格配置 参数
参数说明
插件规格
该插件可配置“单实例”、“高可用”或“自定义”规格。
实例数
选择上方插件规格后,显示跟插件规格匹配的实例数。
选择“自定义”规格时,您可根据需求调整插件实例数。
容器
选择“自定义”规格时,您可根据需求调整插件实例的容器规格。
- 参数配置
- KMS密钥:选择一个创建非对称密钥中创建好的密钥。
- 验签镜像:单击,选择需要验签的镜像。
表2 swr-cosign插件参数配置 参数
参数说明
KMS密钥
选择一个密钥,仅支持 EC_P256、EC_P384、SM2 类型的密钥。
您可以前往密钥管理服务新增密钥。
验签镜像
验签镜像地址通过正则表达式进行匹配,例如填写docker.io/**表示对docker.io镜像仓库的镜像进行验签。如需对所有镜像验签,请填写**。
- 填写完成后,单击“安装”。
待插件安装完成后,选择对应的集群,然后单击左侧导航栏的“插件中心”,可筛选“已安装插件”查看相应的插件。
验签功能生效验证
登录云容器引擎CCE控制台,单击已安装验签插件的集群名称进入集群,进入“工作负载”界面,单击“创建工作负载”,选择已打验签标签policy.sigstore.dev/include:true的命名空间,选择一个未签名的镜像,勾选镜像访问凭证继续创建工作负载,此时会发现验签不通过,原因是容器镜像验签插件会对当前命名空间下的创建负载的容器镜像进行验签,说明验签功能已生效。