“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 构建应用栈、无论您是在本地或云端部署应用程序,镜像漏洞扫描功能、自动的镜像提升策略以及镜像签名都可以帮助您实现安全、自动化的应用程序交付流程。

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
2天前
|
存储 安全 持续交付
【Docker 专栏】Docker 镜像的版本控制与管理
【5月更文挑战第9天】本文探讨了Docker镜像版本控制与管理的重要性,包括可重复性、回滚能力、协作开发和持续集成。常用方法有标签、构建参数和版本控制系统。管理策略涉及定期清理、分层管理和镜像仓库。语义化标签、环境变量和配置文件在版本控制中有应用。版本系统与Docker结合能跟踪历史和促进协作。注意点包括优化镜像大小、确保安全性和兼容性。案例分析和未来趋势展示了持续发展的镜像管理技术,为Docker应用的稳定与进步保驾护航。
【Docker 专栏】Docker 镜像的版本控制与管理
|
2天前
|
运维 安全 Docker
【Docker 专栏】Docker 镜像安全扫描与漏洞修复
【5月更文挑战第9天】Docker技术在软件开发和部署中带来便利,但其镜像安全问题不容忽视。本文探讨了Docker镜像安全扫描与漏洞修复,强调了镜像安全对应用和系统的重要性。文中介绍了静态和动态扫描方法,列举了软件漏洞、配置漏洞和恶意软件等常见安全问题,并提到了Clair和Trivy等扫描工具。修复策略包括更新软件、调整配置和重建镜像。此外,加强安全意识、规范镜像制作流程和定期扫描是管理建议。未来,将持续面对新的安全挑战,需持续研究和完善安全技术。
【Docker 专栏】Docker 镜像安全扫描与漏洞修复
|
2天前
|
Java Linux 数据安全/隐私保护
Docker自定义JDK镜像并拉取至阿里云镜像仓库全攻略
Docker自定义JDK镜像并拉取至阿里云镜像仓库全攻略
|
2天前
|
存储 弹性计算 运维
Docker数据集与自定义镜像:构建高效容器的关键要素
Docker数据集与自定义镜像:构建高效容器的关键要素
|
2天前
|
Kubernetes Java 调度
Java容器技术:Docker与Kubernetes
Java容器技术:Docker与Kubernetes
12 0
|
3天前
|
存储 缓存 运维
【Docker 专栏】Docker 镜像的分层存储与缓存机制
【5月更文挑战第8天】Docker 镜像采用分层存储,减少空间占用并提升构建效率。每个镜像由多个层组成,共享基础层(如 Ubuntu)和应用层。缓存机制加速构建和运行,通过检查已有层来避免重复操作。有效管理缓存,如清理无用缓存和控制大小,可优化性能。分层和缓存带来资源高效利用、快速构建和灵活管理,但也面临缓存失效和层管理挑战。理解这一机制对开发者和运维至关重要。
【Docker 专栏】Docker 镜像的分层存储与缓存机制
|
3天前
|
Kubernetes 负载均衡 调度
【Docker 专栏】Docker Swarm 与 Kubernetes 的选型指南
【5月更文挑战第8天】Docker Swarm 和 Kubernetes 是两大容器编排工具,各有优势。Docker Swarm 简单易用,适合小到中型规模,与 Docker 生态系统集成紧密;而 Kubernetes 功能强大,扩展性好,适用于大规模、复杂场景。选择时需考虑团队技术能力、应用需求及现有技术栈。Kubernetes 学习曲线较陡,Docker Swarm 则较平缓。
【Docker 专栏】Docker Swarm 与 Kubernetes 的选型指南
|
3天前
|
数据库 Docker 容器
【Docker 专栏】使用 Dockerfile 自动化构建 Docker 镜像
【5月更文挑战第8天】Dockerfile是构建Docker镜像的关键,它包含一系列指令,用于描述应用运行环境及所需软件包。通过自动化构建,能提高效率、保证可重复性并提升灵活性。确定基础镜像、安装依赖、设置环境后,执行Dockerfile生成镜像,用于应用程序部署。虽然需要熟悉Docker技术和应用细节,但其带来的益处使其成为现代软件开发和部署的重要工具。
【Docker 专栏】使用 Dockerfile 自动化构建 Docker 镜像
|
Web App开发 存储 应用服务中间件
迈入Docker、Kubernetes容器世界的大门
本文通过简单的示例,带领初学者快速迈入Docker、Kubernetes(K8S)容器世界的大门。假设,你已拥有一个K8S集群,否则,可通过minikube或minishift快速搭建一实验环境。 Docker Docker与K8S ​ Docker本质上是一种虚拟化技术,类似于KVM、XEN、VMWARE,但其更轻量化,且将Docker部署在Linux环境时,其依赖于Linux容器技术(LXC)。
1819 0