Sigstore提供了一个免费、开放的代码签名方法,来给代码、JAR、容器镜像、及BLOB等进行签名。而且,现在Kubernetes也可以用它来验证容器镜像的签名了。
Sigstore已支持的Registry请参见:https://docs.sigstore.dev/cosign/registry_support/。这里,我使用Sigstore的Keyless方式签署Docker Hub上的镜像,即使用下图中的命令签署biandayu/simple-service:v1.2.0,签署过程中会跳出Web登录页面,我使用的是Google账户dayubian@gmail.com。
签署完成后,可在Docker Hub上查看到新生成的tag:
如下图所示,按其文档的指引进行安装:
为需要进行验证的namespace加上label——policy.sigstore.dev/include: "true":
如前所述,我使用的是dayubian@gmail.com来签署的镜像,所以policy可以设成这样——
apiVersion: policy.sigstore.dev/v1beta1
kind: ClusterImagePolicy
metadata:
name: image-policy
spec:
images:
- glob: "**"
authorities:
- keyless:
identities:
- issuer: https://accounts.google.com
subject: dayubian@gmail.com
使用kubectl apply命令部署上述policy后,后面在namespace testsigstore上部署任何容器镜像,都将先验证是否有我的Sigstore keyless数字签名。
如上图所示,部署有签名的容器镜像可以通过;反之,则被拒绝。
页面更新:2024-04-29
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号