8.6. 使用 Fulcio 和 Rekor 验证带有 sigstore 签名的容器镜像
				您可以通过在 policy.json 文件中添加 Fulcio 和 Rekor-related 信息来验证镜像签名。验证容器镜像签名确保镜像来自可信源,且没有被篡改或修改。
			
先决条件
- 
						
container-tools模块已安装。 
流程
在
/etc/containers/registries.conf.d/default.yaml文件中添加以下内容:docker: <registry>: use-sigstore-attachments: truedocker: <registry>: use-sigstore-attachments: trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow 通过设置
use-sigstore-attachments选项,Podman 和 Skopeo 可以将容器 sigstore 签名与镜像一起读写,并将它们保存在与签名镜像相同的存储库中。注意您可以编辑
/etc/containers/registries.d目录中任何 YAML 文件中的 registry 或 repository 配置部分。单个范围 (default-docker、注册中心或命名空间) 只能存在于/etc/containers/registries.d目录中的一个文件中。您还可以在/etc/containers/registries.d/default.yaml文件中编辑系统范围的 registry 配置。请注意,所有 YAML 文件都是可读的,文件名是任意的。
在
/etc/containers/policy.json文件中添加fulcio部分和rekorPublicKeyPath或rekorPublicKeyData字段:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 
								
fulcio部分提供签名是基于 Fulcio 发布的证书。 - 
								您必须指定 
caPath和caData字段中的一个,其中包含 Fulcio 实例的 CA 证书。 - 
								
oidcIssuer和subjectEmail都是必需的,准确指定预期的身份提供商,以及获取 Fulcio 证书的用户身份。 - 
								您必须指定 
rekorPublicKeyPath和rekorPublicKeyData字段之一。 
- 
								
 拉取镜像:
podman pull <registry>/<namespace>/<image>
$ podman pull <registry>/<namespace>/<image>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 
				podman pull 命令会强制签名存在,而无需额外的选项。