“Docker Content Trust + 镜像签名”,打造安全的 Kubernetes 供应链!

简介: Docker EE 通过保护软件供应链来帮助您更安全的交付应用程序。

____2018_03_21

出品丨Docker公司(ID:docker-cn)
编译丨小东
每周一、三、五 与您不见不散!


早前,我们分享了一篇名为“镜像扫描+基于策略的镜像提升”,打造安全的 Kubernetes 供应链!的文章,它主要介绍了 Docker EE 的镜像扫描和基于策略的镜像提升功能为 Kubernetes 软件供应链提供持续、安全的保护。今天,我将为大家带来打造安全的 Kubernetes 供应链解决方案的另一部分内容 —— Docker Content Trust 和 镜像签名功能。

当 Docker EE 的基于角色的权限访问控制(RBAC)与安全集群功能相结合时,组织就会得到一个安全的容器平台解决方案,该解决方案已经为企业准备好了。


限制未经证实的 Kubernetes 内容

正如在开头讨论的那篇文章所介绍的,组织通常会有一个“供应链”,将应用程序从开发者电脑推送到生产环境中,无论是在本地还是在云端中。对于大型组织来说,处理 QA 和测试的团队并不总是开发应用程序的团队。在将应用程序推送到生产环境之前,可能还会有一个单独的团队来处理分段推送和预生产等工作。由于应用程序在部署前需要经过若干个团队,所以对于组织来说,能否验证应用程序的来源是很重要的一项工作。

Docker Content Trust 是个人和团队向镜像添加私钥加密的一种方式,添加数字签名以确保镜像的来源、出处以及真实性。使用 Docker EE ,通过选择只运行已签名的镜像就可以确保部署的镜像是您所信任的镜像,并保证该镜像没有在镜像仓库中或从镜像仓库迁移到生产环境的过程中发生更改,如下图所示:

screenshot

在 Kubernetes 环境中,这意味着如果所使用的底层镜像没有经过特定团队成员的签名,则 Docker EE 将阻止在此群集上部署任何工作负载。

screenshot

这可以用于在供应链的某一阶段强制镜像签名:当开发人员检查初始镜像时、当 QA 团队完成测试时、当安全和网络团队评估应用程序时等等。如果镜像缺失任何所需的签名,Docker EE 将会阻止该镜像的部署工作。这一功能使得运营团队可以防止将未经授权的内容部署到 Kubernetes 中。


将 Docker Content Trust 集成到自动化工作流中

镜像签名不一定只来自个人或团队,它可以扩展到授权的第三方工具,以表明该镜像构建来自于一个经过验证的工作流。Docker EE 通过赋予您在 Docker EE UI 中创建和管理客户端包的能力,从而简化了这一流程。Docker EE 创建了一个可以让如 Jenkins 或 GitLab 这样的 CI 工具使用的密钥对来对创建和添加到镜像仓库中的镜像进行签名。

screenshot

Docker EE 通过保护软件供应链来帮助您更安全的交付应用程序。无论您需要对哪种类型的应用程序(传统、云原生还是微服务)进行容器化改造、无论您是为 Windows 或是为 Linux 构建应用栈、无论您是在本地或云端部署应用程序,镜像漏洞扫描功能、自动的镜像提升策略以及镜像签名都可以帮助您实现安全、自动化的应用程序交付流程。

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
4月前
|
Kubernetes Docker Python
Docker 与 Kubernetes 容器化部署核心技术及企业级应用实践全方案解析
本文详解Docker与Kubernetes容器化技术,涵盖概念原理、环境搭建、镜像构建、应用部署及监控扩展,助你掌握企业级容器化方案,提升应用开发与运维效率。
794 108
|
3月前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
1635 10
|
3月前
|
Kubernetes Devops Docker
Kubernetes 和 Docker Swarm:现代 DevOps 的理想容器编排工具
本指南深入解析 Kubernetes 与 Docker Swarm 两大主流容器编排工具,涵盖安装、架构、网络、监控等核心维度,助您根据团队能力与业务需求精准选型,把握云原生时代的技术主动权。
286 1
|
6月前
|
存储 Kubernetes 监控
Docker与Kubernetes集成挑战及方案
面对这些挑战,并不存在一键解决方案。如同搭建灌溉系统需要考虑多种因素,集成Docker与Kubernetes也需要深思熟虑的规划、相当的技术知识和不断的调试。只有这样,才能建立起一个稳定、健康、高效的Docker-Kubernetes生态,让你的应用像花园中的植物一样繁荣生长。
282 63
|
弹性计算 Kubernetes 数据处理
KubeRay on ACK:更高效、更安全
阿里云 ACK 以托管组件化的方式给客户提供快速搭建Ray集群的能力,并通过结合使用阿里云的调度,存储,日志与监控,给用户提供更佳使用体验。
|
8月前
|
存储 Kubernetes 调度
Kubernetes、Docker和Containerd的关系解析
总的来说,Docker、Containerd和Kubernetes之间的关系可以用一个形象的比喻来描述:Docker就像是一辆装满货物的卡车,Containerd就像是卡车的引擎,而Kubernetes就像是调度中心,负责指挥卡车何时何地送货。
372 12
|
9月前
|
Kubernetes Docker 容器
Kubernetes与Docker参数对照:理解Pod中的command、args与Dockerfile中的CMD、ENTRYPOINT。
需要明确的是,理解这些都需要对Docker和Kubernetes有一定深度的理解,才能把握二者的区别和联系。虽然它们都是容器技术的二个重要组成部分,但各有其特性和适用场景,理解它们的本质和工作方式,才能更好的使用这些工具,将各自的优点整合到生产环境中,实现软件的快速开发和部署。
324 25
|
2月前
|
人工智能 算法 调度
阿里云ACK托管集群Pro版共享GPU调度操作指南
本文介绍在阿里云ACK托管集群Pro版中,如何通过共享GPU调度实现显存与算力的精细化分配,涵盖前提条件、使用限制、节点池配置及任务部署全流程,提升GPU资源利用率,适用于AI训练与推理场景。
252 1