本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
签名验证
在对容器镜像进行签名后,您可以验证签名以确保镜像未被篡改且来自可信来源。Amazon ECR 支持多种验证签名的方法:
使用 Amazon EKS 进行托管验证
Amazon EKS 为自动签名验证提供了原生集成。当您在 Amazon EKS 集群中配置签名验证时,该服务会在允许容器运行之前自动验证图像签名。有关配置签名验证的更多信息,请参阅 Amazon EKS 用户指南中的部署期间验证容器映像签名。
适用于亚马逊 ECS 的 Lambda 准入控制器
Amazon ECS 提供服务生命周期挂钩,允许您在服务部署期间运行自定义逻辑。这些挂钩可以在部署过程中的特定时刻触发 Amazon Lambda 函数,使您能够在允许服务启动之前验证容器映像签名。有关更多信息,请参阅Amazon Signer 开发人员指南中的验证 Amazon ECS 的容器镜像签名。
使用记法 CLI 进行手动验证
您可以使用标记 CLI 手动验证签名。此方法要求您在本地计算机或验证环境中安装和配置 Notation CLI。有关使用 Notation CLI 验证图像的详细说明,请参阅Amazon Signer 开发者指南中的登录后在本地验证镜像。
为符号客户端配置身份验证
如果您使用手动签名或使用 Notation CLI 手动验证签名,则必须配置符号客户端,使其能够向 Amazon ECR 进行身份验证。如果您在安装 Notation 客户端的同一主机上安装了 Docker,那么 Notation 将重用您为 Docker 客户端使用的相同身份验证方法。Docker login 和logout命令将允许符号sign和verify命令使用相同的凭据,而且您不必单独对符号进行身份验证。有关配置 Notation 客户端进行身份验证的详细信息,请参阅 Notary Project 文档中的 Authenticate with OCI-compliant registries
如果您没有使用 Docker 或其他使用 Docker 凭证的工具,那么我们建议使用 Amazon ECR Docker 凭证助手作为您的凭证存储。有关如何安装和配置 Amazon ECR 凭证助手的更多信息,请参阅 Amazon ECR Docker 凭证助手