第 2 章 使用带有 GitOps 的 Secret Store CSI 驱动程序安全地管理 secret


本指南指导您完成将 Secret Store Container Storage Interface (SSCSI)驱动程序与 OpenShift Container Platform 4.14 及之后的版本中的 GitOps Operator 集成的过程。

2.1. 使用带有 GitOps 的 Secrets Store CSI 驱动程序管理 secret 概述

有些应用程序需要敏感信息,如密码和用户名,它们必须被视为良好的安全实践。如果因为集群中未正确配置基于角色的访问控制(RBAC)而公开敏感信息,则具有 API 或 etcd 访问权限的任何人都可以检索或修改 secret。

重要

有权在命名空间中创建 pod 的任何人都可以使用该 RBAC 来读取该命名空间中的所有 secret。使用 SSCSI Driver Operator,您可以使用外部 secret 存储来安全地存储和向 pod 提供敏感信息。

将 OpenShift Container Platform SSCSI 驱动程序与 GitOps Operator 集成的过程由以下步骤组成:

2.1.1. 优点

将 SSCSI 驱动程序与 GitOps Operator 集成具有以下优点:

  • 提高 GitOps 工作流的安全性和效率
  • 有助于将 secret 作为卷附加到部署 pod 中
  • 确保安全而高效地访问敏感信息

2.1.2. Secret 存储供应商

以下 secret 存储供应商可用于 Secret Store CSI Driver Operator:

  • AWS Secrets Manager
  • AWS Systems Manager Parameter Store
  • Microsoft Azure Key Vault

例如,假设您使用 AWS Secret Manager 作为带有 SSCSI Driver Operator 的 secret 存储供应商。以下示例显示了 GitOps 存储库中的目录结构,它可以使用 AWS Secret Manager 中的 secret:

GitOps 存储库中的目录结构示例

├── config
│   ├── argocd
│   │   ├── argo-app.yaml
│   │   ├── secret-provider-app.yaml 1
│   │   ├── ...
│   └── sscsid 2
│       └── aws-provider.yaml 3
├── environments
│   ├── dev 4
│   │   ├── apps
│   │   │   └── app-taxi 5
│   │   │       ├── ...
│   │   ├── credentialsrequest-dir-aws 6
│   │   └── env
│   │       ├── ...
│   ├── new-env
│   │   ├── ...

2
存储 aws-provider.yaml 文件的目录。
3
安装 AWS Secret Manager 供应商并为它部署资源的配置文件。
1
创建应用程序并为 AWS Secret Manager 部署资源的配置文件。
4
存储部署 pod 和凭证请求的目录。
5
存储 SecretProviderClass 资源的目录,以定义您的 secret 存储供应商。
6
存储 credentialsrequest.yaml 文件的文件夹。此文件包含凭据请求的配置,用于将 secret 挂载到部署 pod。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.