Confidential Containers发布0.5.0版本,龙蜥将基于八大特性构建开箱即用的机密容器解决方案

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: kata-cc、enclave-cc、安全镜像等多项核心项目已成功适配 Anolis OS。

文/段勇帅

01 前言

机密容器(Confidential Containers,简称CoCo)是 Cloud Native Computing Foundation(CNCF)Sandbox 项目。目前机密容器项目的核心参与者包括阿里云、AMD、ARM、IBM、Intel、Microsoft、Red Hat、Rivos 等软件和硬件公司。本次发布的CoCo-0.5.0 release 是机密容器社区成立以来最大规模的版本更新,共包含八大新特性。其中,阿里云作为项目核心技术的主要贡献者,主动发起/深度参与了该版本中的四项关键特性。云原生和安全可信是龙蜥社区的八大技术方向之二,作为理事长单位,阿里云将该机密容器解决方案推广到龙蜥社区,并基于龙蜥社区构建开箱即用的机密容器解决方案

02 云原生机密计算

云原生机密计算基于 CPU 可信执行环境(TEE)技术,并与云原生容器以及 Kubernetes 技术结合,构建出新的软件架构。其设计目的是为运行在不受用户控制的云计算基础设施上的敏感数据和应用提供安全可信的计算环境。机密容器项目的目标是标准化机密计算在容器技术层面的实现方式,屏蔽多种 CPU TEE 的底层实现细节,在使用体感上保持与使用普通容器进行开发和部署的一致性,为用户提供开箱即用的机密计算软件栈。

那么,机密容器项目致力于以下目标:

  • 允许云原生应用程序所有者定义应用程序的安全要求。
  • 透明部署无需修改的容器。
  • 支持多种 TEE 和硬件平台。
  • 将云服务提供商(CSP)与用户应用程序隔离的信任模型。
  • 在 Kubernetes 集群管理功能中实践最小特权原则,以保障 TEE 内 APP 和数据的隐私性与安全性。

可以在《Confidential Containers:云原生机密计算基础设施》查看更多云原生机密计算的相关介绍。

03 机密容器社区 0.5.0 版本

本次机密容器社区发布的 0.5.0 release 包含以下八项新特性:

  • 发布基于 Intel SGX 硬件的进程级机密容器完整解决方案 Enclave-CC。
  • 发布 KBS Resource URI 方案。标识创建和使用机密环境时的所有机密资源。
  • 不同的 KBC 共享镜像加密格式,实现加密镜像互通。
  • 支持通用密钥代理系统(KBS)。该系统包括 KBS 本身,它依赖于 Attestation Service(AS)进行证据验证。AS 参考值由 Reference Value Provider Service(RVPS)提供。
  • 向 CoCo operator 添加了远程管理程序支持。这有助于在本地或在云服务提供商基础设施上将容器创建为“peer pods”。
  • 支持使用 K8S Annotations 进行 AMD SEV 机密容器的配置。
  • CI/CD 支持 AMD SEV-ES 硬件平台。
  • 一些开发中的 SEV-SNP 组件可以在无需 attestation 的情况下手动启用,以测试 SNP 容器。

通用远程证明(Remote Attestation)是机密容器项目的一项核心工作。在 CoCo-0.5.0 release 中,远程证明主要包含两个组件群,即位于云端的 Attestation Agent 和位于租户侧的 CoCo-AS。其中,Attestation Agent 执行 Attester 的功能,按照请求向租户侧提供各种服务 API。CoCo-AS 则是部署在可信端的集群服务,由执行 Verifier 功能的Attestation Service和执行 Relying Party 功能的 Key Broker Service 组成,可以帮助用户验证远程 TEE 工作负载是否运行在真实、可信、预期的软硬件环境中。并且在验证通过后,其负责进行安全响应,如注入机密数据(如解密密钥)、发行令牌证明 TEE 的可信度等。


上述各组件在本次发布的版本中都有较大更新,具体功能如下:

Attestation Agent(AA)。AA 是运行在云端TEE环境中的一个组件,负责在 TEE 启动时获取可信计算基(TCB)的证明信息,包括可信硬件的信息和所有软件组件的度量值。以上证明信息均由 CPU 内部的可信硬件密钥签名,无法窃取和篡改。并且AA通过其内部组件Key Broker Client(KBC)与对应的 KBS 建立连接,从而获得可信服务或 KBS 的资源。AA 目前提供基于远程证明的多项功能,如容器镜像解密、机密资源注入等,并且机密资源均由 KBS Resource URI 唯一索引。

Key Broker Service(KBS)。KBS 是 CoCo-AS 的前端 Web 服务器,它提供HTTPS RESTful API 接收来自 AA 的请求,包括获取机密资源和获取认证令牌等。在实现上,KBS 与 AS 交互,并将 AA 提供的证明信息转发给 AS 进行验证。验证通过后,KBS 再将请求转发给相应的内部模块处理。KBS 目前集成了一个用于维护机密资源的代理模块和一个用于发布证明令牌的功能模块。

Attestation Service(AS)。AS 由租户运行,用于验证来自 AA、由硬件密钥签名的证明信息。AS 提供三项功能:允许租户配置个性化的鉴权认证策略、验证不同类型硬件的证明信息以支撑复杂的策略配置、提供个性化组件参考值。其中最后一项功能由 RVPS 实现。

Reference Value Provider Service(RVPS)。RVPS 位于租户端,处理软件供应链产生的软件元数据,验证其合法性并提取其中记录的参考值/哈希值用于远程证明。它采用插件方式支持多种供应链元数据格式。目前已经支持 in-toto link & layout v0.9。此外,RVPS 采用模块化的存储方式,将经过验证的参考值存储在后端存储引擎中,供 AS 查询。

04 后续开发规划与产品化推广

基于 CoCo-0.5.0 release,机密计算社区也总结出需要持续开发的功能,并根据优先度详细规划了开发路线图。例如,KBS token 的生成与验证功能,KBS 从 KMS 获取密钥,机密计算社区的参考值发布规则等,都在未来版本的功能规划中。


在将机密容器解决方案推广至龙蜥社区时,龙蜥社区也将沿着 runC(普通容器)->runD(安全容器)->runE(机密容器)的演进路径推进,并整合云原生套件和机密容器相关组件,构建开源的、开箱即用机密容器解决方案。截止 CoCo-0.5.0 release 发布,kata-cc、enclave-cc、安全镜像等多项核心项目已成功适配 Anolis OS,《云原生机密计算最佳实践白皮书》也在积累打磨后发布。在未来,机密计算社区也将围绕机密计算核心项目,构建云原生机密计算开源技术栈,降低机密计算的使用门槛,推动云原生场景下的机密计算技术的发展。


相关链接:

CoCo-0.5.0 release文档: https://github.com/confidential-containers/documentation/blob/main/releases/v0.5.0.md

龙蜥社区云原生 SIG 主页:

https://openanolis.cn/sig/cloud-native

龙蜥社区云原生机密计算 SIG 主页:https://openanolis.cn/sig/coco

机密容器 github 链接地址: https://github.com/confidential-containers

云原生机密计算最佳实践白皮书

https://openanolis.cn/confidentialComputing

—— 完 ——

加入龙蜥社群

加入微信群:添加社区助理-龙蜥社区小龙(微信:openanolis_assis),备注【龙蜥】与你同在;加入钉钉群:扫描下方钉钉群二维码。

相关文章
|
6月前
|
Docker 容器
Docker网关冲突导致容器启动网络异常解决方案
当执行`docker-compose up`命令时,服务器网络可能因Docker创建新网桥导致IP段冲突而中断。原因是Docker默认的docker0网卡(172.17.0.1/16)与宿主机网络地址段重叠,引发路由异常。解决方法为修改docker0地址段,通过配置`/etc/docker/daemon.json`调整为非冲突段(如192.168.200.1/24),并重启服务。同时,在`docker-compose.yml`中指定网络模式为`bridge`,最后通过检查docker0地址、网络接口列表及测试容器启动验证修复效果。
1023 39
|
9月前
|
监控 关系型数据库 MySQL
zabbix7.0.9安装-以宝塔安装形式-非docker容器安装方法-系统采用AlmaLinux9系统-最佳匹配操作系统提供稳定运行环境-安装教程完整版本-优雅草卓伊凡
zabbix7.0.9安装-以宝塔安装形式-非docker容器安装方法-系统采用AlmaLinux9系统-最佳匹配操作系统提供稳定运行环境-安装教程完整版本-优雅草卓伊凡
598 30
|
10月前
|
供应链 监控 安全
对话|企业如何构建更完善的容器供应链安全防护体系
对话|企业如何构建更完善的容器供应链安全防护体系
对话|企业如何构建更完善的容器供应链安全防护体系
|
10月前
|
人工智能 监控 安全
容器化AI模型的安全防护:构建可信的AI服务
在AI模型广泛应用的背景下,容器化AI模型的安全防护至关重要。主要安全威胁包括数据窃取、模型窃取、对抗样本攻击和模型后门攻击等。为应对这些威胁,需采取多层次防护措施:容器安全(如使用可信镜像、限制权限)、模型安全(如加密、水印)、数据安全(如加密、脱敏)和推理安全(如输入验证、异常检测)。此外,利用开源工具如Anchore Engine、Falco和ART等,可进一步加强防护。遵循安全开发生命周期、最小权限原则和深度防御等最佳实践,确保AI服务的安全性和可信度。
|
10月前
|
机器学习/深度学习 数据采集 人工智能
容器化机器学习流水线:构建可复用的AI工作流
本文介绍了如何构建容器化的机器学习流水线,以提高AI模型开发和部署的效率与可重复性。首先,我们探讨了机器学习流水线的概念及其优势,包括自动化任务、确保一致性、简化协作和实现CI/CD。接着,详细说明了使用Kubeflow Pipelines在Kubernetes上构建流水线的步骤,涵盖安装、定义流水线、构建组件镜像及上传运行。容器化流水线不仅提升了环境一致性和可移植性,还通过资源隔离和扩展性支持更大规模的数据处理。
|
9月前
|
缓存 JavaScript 前端开发
Dockerfile全面指南:从基础到进阶,掌握容器化构建的核心工具
Dockerfile 是容器化开发中的关键工具。理解并掌握其使用方式,不仅能提高开发效率,还能让你的应用具备更强的可移植性和灵活性。通过优化配置和合理安排构建步骤,可以打造更轻量、更高效的容器镜像。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
4月前
|
Kubernetes Docker Python
Docker 与 Kubernetes 容器化部署核心技术及企业级应用实践全方案解析
本文详解Docker与Kubernetes容器化技术,涵盖概念原理、环境搭建、镜像构建、应用部署及监控扩展,助你掌握企业级容器化方案,提升应用开发与运维效率。
793 108