confidential-containers/guest-components

GitHub: confidential-containers/guest-components

机密容器项目在可信执行环境内部运行的 Rust 工具集,提供远程证明、镜像加解密、机密数据管理等核心能力。

Stars: 118 | Forks: 146

# 机密容器工具与组件 [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fconfidential-containers%2Fimage-rs.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Fconfidential-containers%2Fimage-rs?ref=badge_shield) [![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/confidential-containers/guest-components/badge)](https://scorecard.dev/viewer/?uri=github.com/confidential-containers/guest-components) 本仓库包含用于机密容器镜像的工具和组件。 ## 组件 [Attestation Agent](attestation-agent) 用于协助远程证明协议的代理。 可以构建为库以在基于进程的 enclave 中运行,也可以构建为在机密虚拟机内部运行的进程。 [image-rs](image-rs) 容器镜像管理库的 Rust 实现。 [ocicrypt-rs](ocicrypt-rs) OCI 镜像加密库的 Rust 实现。 [api-server-rest](api-server-rest) CoCo RESTful API 服务器。 [confidential-data-hub](confidential-data-hub) 机密数据中心。 [coco-keyprovider](attestation-agent/coco_keyprovider/) CoCo Keyprovider。用于加密容器镜像。 ## 工具 [secret-cli](confidential-data-hub/hub/src/bin/secret_cli.rs) 用于封装和解封密封秘密的实用程序 [CDH Client](confidential-data-hub/hub/src/bin) 用于测试 CDH 端点的工具 [CDH Go Client](confidential-data-hub/golang) 用于测试 CDH 端点的 Go 工具 [CDH (One Shot)](confidential-data-hub/hub/src/bin/cdh-oneshot.rs) CDH 的 One Shot 版本 [CoCo Keyprovider](attestation-agent/coco_keyprovider) 用于加密镜像的 Keyprovider 端点 ## 构建 提供了一个 `Makefile`,用于快速为特定平台构建 Attestation Agent/Api Server Rest/Confidential Data Hub。 ``` make build TEE_PLATFORM=$(TEE_PLATFORM) make install DESTDIR=/usr/local/bin ``` `TEE_PLATFORM` 参数可以是 - `none`:用于非机密访客的测试 - `all`:用于以下所有平台 - `fs`:用于具有加密根文件系统的平台(即 s390x) - `tdx`:用于 Intel TDX - `az-tdx-vtpm`:用于带有 Azure vTPM 的 Intel TDX - `snp`:用于 AMD SEV-SNP - `amd`:用于 AMD SEV(-ES) 和 AMD SEV-SNP - `az-snp-vtpm`:用于带有 Azure vTPM 的 AMD SEV-SNP - `se`:用于 IBM Secure Execution (SE) 默认情况下,`kbs`/`sev` 将作为资源提供者在 Confidential Data Hub 中构建。如果你不想启用任何默认选项,而只使用内置的 `offline-fs-kbc`,可以在构建时将 `NO_RESOURCE_PROVIDER` 标志设置为 `true`。 ``` make build TEE_PLATFORM=$(TEE_PLATFORM) NO_RESOURCE_PROVIDER=true ``` ### 可选构建参数 可以通过运行以下命令更新 ttRPC 和 gRPC 协议 ``` make build-protos ``` ## 许可证 [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fconfidential-containers%2Fimage-rs.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Fconfidential-containers%2Fimage-rs?ref=badge_large)
标签:DevSecOps, Go 语言, JSONLines, Kata Containers, Python工具, Rust, StruQ, 上游代理, 可信执行环境 (TEE), 可视化界面, 容器镜像加密, 微服务安全, 数据隐私, 日志审计, 机密容器, 机密计算, 硬件安全模块, 网络流量审计, 请求拦截, 远程证明, 通知系统, 通知系统, 镜像拉取, 零信任