赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 分布式云容器平台ACK One
  4. 操作指南
  5. 注册集群
  6. 镜像管理
  7. 使用kritis-validation-hook组件实现自动验证容器镜像签名

使用kritis-validation-hook组件实现自动验证容器镜像签名

  • 镜像管理
  • 发布于 2025-04-18
  • 0 次阅读
文档编辑
文档编辑

本文介绍如何使用容器镜像服务ACR(Container Registry)、密钥管理服务KMS(Key Management Service)、云安全中心(Security Center)和kritis-validation-hook组件实现自动验证容器镜像签名,确保只部署可信授权方签名的容器镜像,降低在您环境中发生意外或恶意代码的风险。

步骤一:安装kritis-validation-hook组件

  1. 登录容器服务管理控制台,在左侧导航栏选择集群列表。

  2. 在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择运维管理 > 组件管理。

  3. 在组件管理页面,单击安全页签,找到kritis-validation-hook,单击安装。

  4. 授予访问kritis-validation-hook组件所需的权限。

    您需要确保集群拥有运行kritis-validation-hook组件所需的访问权限。具体操作,请参见配置资源访问权限。

步骤二:创建用于容器镜像签名的KMS密钥

关于创建用户主密钥的具体操作,请参见管理密钥。

重要

创建密钥时,选择密钥类型为RSA_2048;选择密钥用途为Sign/Verify。

步骤三:在云安全中心配置使用KMS密钥的证明者

  1. 登录云安全中心控制台。在控制台左上角,选择需防护资产所在的区域:中国或全球(不含中国)。

  2. 在左侧导航栏,选择防护配置 > 容器防护 > 容器签名。

  3. 在证明者页签,单击创建证明者。配置完成后,单击确定完成证明者的创建。

    配置项

    说明

    证明者名称

    配置容器签名安全策略时需要选择证明者,用于对您的目标容器进行可信授权。建议输入便于识别的名称。

    选择证书

    在证书列表中选择您已创建的KMS密钥。

    描述

    输入该证明者的备注信息。

步骤四:在ACR中开启容器镜像自动加签功能

  1. 登录容器镜像服务控制台。

  2. 在顶部菜单栏,选择所需地域。

  3. 在左侧导航栏,选择实例列表。

  4. 在实例列表页面,单击目标企业版实例名称或者单击目标企业版实例的管理。

    说明

    如需添加企业版实例,单击创建企业版实例,且实例规格为高级版。

  5. 在企业版实例管理页左侧导航栏中,选择仓库管理 > 命名空间。

    创建一个命名空间,用于为该命名空间内的所有容器镜像启用镜像加签功能。具体操作,请参见命名空间的基本操作。

  6. 为创建的命名空间启用容器镜像自动加签功能。

    添加加签规则时选择步骤三中在云安全中心创建的证明者。

    1. 在企业版实例管理页左侧导航栏中,选择安全可信 > 镜像加签。

    2. 在镜像加签页签中,单击添加加签规则。

      有关添加加签规则配置详情,请参见配置镜像自动加签规则。

步骤五:在云安全中心启用容器镜像验签功能

通过在云安全中心添加和启用策略的方式来为Kubernetes集群中某个命名空间启用容器镜像验签功能。

  1. 登录云安全中心控制台。

  2. 在左侧导航栏,选择防护配置 > 容器防护 > 容器签名。

  3. 在安全策略页签,单击添加策略。策略配置完成后,单击确定。

    配置项

    说明

    策略名称

    配置签名安全策略时需要选择证明者,用于对您的目标集群进行可信授权。

    建议输入便于识别的名称。

    证明者

    在证明者列表中选择您已创建的证明者。

    应用集群

    单击需要进行容器签名的集群分组后,选中目标集群命名空间。

    策略开启状态

    单击开关,创建策略后策略会立即启用。

    说明

    默认不开启策略。策略如果未开启将不会生效。

    备注

    输入安全策略的备注信息。

步骤六:验证容器镜像自动验签功能

说明

如果未启用镜像版本不可变,必须配置使用digest格式的镜像地址。关于镜像版本不可变的详细介绍,请参见开启镜像版本不可变 。

执行以下命令,验证容器镜像自动验签功能。

  • 已开启验签功能的Default命名空间将拒绝部署使用未加签的容器镜像服务。

    使用Tag格式镜像的命令如下:

    kubectl -n default create deployment not-sign --image=alpine:3.11 -- sleep 10
    Error from server: admission webhook "kritis-validation-hook-deployments.grafeas.io" denied the request: image alpine:3.11 is not attested

    使用Digest格式镜像的命令如下:

    kubectl -n default create deployment not-sign --image=alpine@sha256:ddba4d27a7ffc3f86dd6c2f92041af252a1f23a8e742c90e6e1297bfa1bc0c45 -- sleep 10
    Error from server: admission webhook "kritis-validation-hook-deployments.grafeas.io" denied the request: image alpine@sha256:ddba4d27a7ffc3f86dd6c2f92041af252a1f23a8e742c90e6e1297bfa1bc0c45 is not attested
  • 向已开启自动加签功能的容器镜像服务命名空间中推送一个镜像,然后验证可以使用这个加签的容器镜像部署服务。

    docker push kritis-demo***.cn-hongkong.cr.aliyuncs.com/kritis-demo***/alpine:3.11
    The push refers to repository [kritis-demo***.cn-hongkong.cr.aliyuncs.com/kritis-demo***/alpine]
    5216338b40a7: Pushed
    3.11: digest: sha256:ddba4d27a7ffc3f86dd6c2f92041af252a1f23a8e742c90e6e1297bfa1bc0c45 size: 528

    放行已自动加签容器镜像的命令如下:

    kubectl -n default create deployment is-signed --image=kritis-demo***.cn-hongkong.cr.aliyuncs.com/kritis-demo***/alpine@sha256:ddba4d27a7ffc3f86dd6c2f92041af252a1f23a8e742c90e6e1297bfa1bc0c45 -- sleep 10
    deployment.apps/is-signed created

相关文档

  • kritis-validation-hook组件介绍,请参见kritis-validation-hook组件介绍。

  • kritis-validation-hook组件变更记录,请参见kritis-validation-hook。

相关文章

通过image-syncer工具迁移容器镜像 2025-04-18 18:12

在Kubernetes集群迁移场景中,镜像仓库之间进行镜像迁移和同步是基本需求,image-syncer工具可以解决通用的容器镜像批量迁移和镜像同步复制的问题,将已有的容器镜像平滑的迁移到阿里云镜像服务ACR上。本文主要为您介绍如何通过image-syncer工具迁移容器镜像。 背景信息

使用P2P加速镜像拉取 2025-04-18 18:12

P2P加速利用计算节点的内网带宽资源,在节点之间分发镜像。您可以在注册集群中使用P2P加速功能提升镜像拉取速度,减少应用部署时间。本文介绍如何在注册集群中使用P2P加速镜像拉取。 前提条件 已创建容器镜像服务企业版实例,且您创建的企业版实例必须为标准版或高级版。更多信息,请参见创建企业版实例。

使用kritis-validation-hook组件实现自动验证容器镜像签名 2025-04-18 18:12

本文介绍如何使用容器镜像服务ACR(Container Registry)、密钥管理服务KMS(Key Management Service)、云安全中心(Security Center)和kritis-validation-hook组件实现自动验证容器镜像签名,确保只部署可信授权方签名的容器镜像,

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号