关于 Red Hat Trusted Application Pipeline
了解如何使用红帽受信任的应用程序管道保护您的软件开发生命周期。
摘要
前言
在当今的快节奏软件开发环境中,复杂的应用程序依赖于复杂的软件供应链。Red Hat Trusted Application Pipeline (RHTAP)通过保护软件开发生命周期的每个阶段来解决这些漏洞。此综合框架确保每个阶段都嵌入安全性,让您的团队能够专注于创新,而不影响安全性。
第 1 章 什么是 RHTAP?
RHTAP 不仅仅是安全的 CI/CD 平台 - 它是一个转换解决方案,可增强整个软件开发生命周期(SDLC)的网络安全实践。通过集成安全措施到部署,RHTAP 可加速开发人员加入,简化流程,并针对新兴威胁对应用程序进行分类。
1.1. 主要功能
- 持续集成和交付(CI/CD): 在安全开发环境中自动从 Git 源代码构建、测试和部署容器镜像。
- 现成的模板:使用 预构建的安全模板 Kickstart 项目,您可以自定义并加速您的生产时间。
- 通用构建支持: 使用 Java、Python、Node.js、Go 或 npm 等流行语言构建应用程序到安全的容器镜像中。
- 开发人员门户访问: 利用 Red Hat Developer Hub 作为您的自助服务门户,简化开发和集成安全最佳实践。
- 高级安全扫描: 通过每个合并请求识别漏洞,生成详细的软件 Bills Materials (SBOM),并根据严格的安全标准验证容器镜像合规性。
谁应该使用 RHTAP?
RHTAP 为平台工程师、应用程序开发人员和安全团队量身定制,寻求管理软件供应链的强大、安全的解决方案。无论是设置新的内部开发人员门户还是增强现有的 CI/CD 进程,RHTAP 都可以为您的组织提供必要的工具和灵活性。
RHTAP 如何工作?
RHTAP 通过一整套工具,使组织能够保护和简化其 DevSecOps CI/CD 工作流:
1.2. 从开始安全开发
部署 RHTAP 后,开发人员可以访问 Red Hat Developer Hub 中预构建的安全模板,从而简化新应用程序的创建。这些模板提供全面安装的环境,包括代码存储库、技术文档和 CI/CD 管道。
1.3. 通过开发生命周期持续安全性
每次修改源代码时,RHTAP 都会触发管道运行,该运行签名并测试每个构建工件。管道还执行严格的漏洞扫描,并自动生成 SBOM,从而为应用程序组件提供完全透明性。
1.4. review, Refine, 和 Release
当应用程序通过各种阶段开发、分阶段和 production-RHTAP 改进时,通过企业合同(EC)持续实施安全标准。这可确保只有容器镜像满足预定义的质量和安全标准,并详细报告必要的更正。
第 2 章 技术成为 RHTAP
RHTAP 与业界领先的平台和工具无缝集成,以保持安全性和效率:
组件或技术 | 描述 |
---|---|
Red Hat Developer Hub (RHDH) | 自助服务门户简化了开发,并从头开始集成安全最佳实践。 |
Red Hat Trusted Artifact Signer (RHTAS) | 通过签名和测试增强了软件完整性,确保所有工件都是安全和真实的。 |
Red Hat Trusted Profile Analyzer (RHTPA) | 自动创建和管理 SBOM,在软件供应链中提供透明性和合规性。 |
OpenShift | 将 OpenShift Container Platform (OCP)用于计算资源,为整个开发生命周期提供安全环境。 |
Quy | Quay 充当安全的容器镜像存储库,持续扫描镜像以查找漏洞,并确保容器化应用程序在整个生命周期中保持安全。 |
OpenShift GitOps | 使用 Git 存储库管理 Kubernetes 部署和基础架构,确保一致的、自动化和安全部署实践。 |
OpenShift Pipelines | 自动化 CI/CD 流程,对构建、测试和部署工作流进行可见性和控制,加速您的生产路径,同时保持高质量标准。 |
Argo CD | 自动化并跟踪应用程序部署和生命周期管理,确保应用程序定义、配置和环境的一致性版本。 |
第 3 章 关键安全实践
RHTAP 包含高级安全措施来保护软件供应链:
- 漏洞扫描 : 每个拉取请求都经过全面扫描,以在开发过程早期检测和解决潜在的安全威胁。
- SBOM Generation: 自动化 SBOM 生成提供完整的软件组件清单,确保透明度和合规性。
- 容器镜像安全 : 验证容器镜像符合 SLSA (软件工件级别) 指南,由具有全面的安全规则的企业合同强制。
第 4 章 选择 CI/CD 工具
RHTAP 在 CI/CD 管理方面提供了灵活性,允许您在 Tekton 和 Jenkins 之间进行选择:
- Tekton: 对于云原生环境,Tekton 使用以 Kubernetes 为中心的方法自动化 CI/CD 工作流,提供强大的自动化和可扩展性。
- Jenkins: Jenkins 通过其广泛的插件生态系统支持广泛的集成,使其成为不同 CI/CD 环境的广泛选择。
更新于 2024-09-11