Menu Close

Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

34.4. 加密数据

创建新的加密配置文件。

kind: EncryptionConfig
apiVersion: v1
resources:
  - resources:
    - secrets
    providers:
    - aescbc:
        keys:
        - name: key1
          secret: <BASE 64 ENCODED SECRET>
    - identity: {}

创建新 secret:

  1. 生成 32 字节随机密钥,并进行 base64 编码。例如,在 Linux 和 macOS 中使用:

    $ head -c 32 /dev/urandom | base64
    重要

    加密密钥必须生成一个适当的加密安全随机数字生成器,如 /dev/urandom。例如,来自 Golang 或 random.random()的 math/ random 不合适。

  2. 将该值放在 secret 字段中。
  3. 重启 API 服务器:

    # master-restart api
    # master-restart controllers
重要

加密供应商配置文件包含可解密 etcd 内容的密钥,因此您必须正确限制 master 上的权限,以便只有运行 master API 服务器的用户才能读取它。