文档

密钥加密服务设置

MinIO 服务器包含三组环境变量,用于管理 MinIO 服务器如何与密钥加密服务 (KES)、密钥管理服务 (KMS) 或静态密钥文件交互。您只能定义三组中的其中一组。如果定义了不止一组环境变量集,MinIO 会返回错误。

注意

这些设置没有针对使用 mc admin config set 的配置设置选项。

在启动或重启 MinIO 进程之前,在主机系统中定义这组环境变量中的一组。有关如何定义环境变量,请参阅您的操作系统的文档。

重要

每个配置设置都会控制 MinIO 的基本行为和功能。MinIO **强烈建议** 在将配置更改应用于生产环境之前,在较低的环境(如 DEV 或 QA)中进行测试。

密钥加密服务

定义以下变量以使用密钥加密服务 (KES) 连接到 受支持的第三方密钥管理服务提供商

MINIO_KMS_KES_ENDPOINT

MinIO 密钥加密服务 (KES) 进程用于支持 SSE-S3 和 MinIO 后端加密操作的端点。用 , 分隔多个 KES 端点。

MINIO_KMS_KES_KEY_NAME

在 KES 服务器上配置的密钥管理系统 (KMS) 上的外部密钥的名称,用于执行加密/解密操作。MinIO 将此密钥用于以下用途

  • 加密后端数据(IAM、服务器配置)。

  • 使用 SSE-KMS 的服务器端加密的默认加密密钥。

  • 使用 SSE-S3 的服务器端加密的加密密钥。

重要

在 MinIO 部署上启用 SSE 会自动使用默认加密密钥对该部署的后端数据进行加密。

MinIO 需要 访问 KES 和外部 KMS 来解密后端并正常启动。KMS **必须**维护并提供对 MINIO_KMS_KES_KEY_NAME 的访问。您无法在以后禁用 KES 或“撤消” SSE 配置。

MINIO_KMS_KES_API_KEY

使用从 kes identity new 命令获取的 KES API 密钥来验证加密服务的首选方法。

此环境变量与 MINIO_KMS_KES_KEY_FILEMINIO_KMS_KES_CERT_FILE 环境变量互斥。

MINIO_KMS_KES_KEY_FILE

与用于验证 KES 服务器的 MINIO_KMS_KES_CERT_FILE x.509 证书相关的私钥。KES 服务器要求客户端出示其证书以执行双向 TLS (mTLS)。

有关 KES 访问控制的更完整文档,请参阅 KES wiki

您还必须设置 MINIO_KMS_KES_CERT_FILE。此变量与 MINIO_KMS_KES_API_KEY 互斥。

MINIO_KMS_KES_CERT_FILE

要出示给 KES 服务器的 x.509 证书。KES 服务器要求客户端出示其证书以执行双向 TLS (mTLS)。

KES 服务器从证书计算 身份 并将其与配置的策略进行比较。KES 服务器仅授予 minio 服务器对策略明确授予的操作的访问权限。

有关 KES 访问控制的更完整文档,请参阅 KES wiki

您还必须设置 MINIO_KMS_KES_KEY_FILE。此变量与 MINIO_KMS_KES_API_KEY 互斥。

MINIO_KMS_KES_CAPATH
可选

允许验证自签名或第三方 CA 的 KES 服务器证书。指定 KES 部署的 CA 证书所在位置的路径。

如果您使用公共证书颁发机构,则不需要此变量。

MINIO_KMS_KES_KEY_PASSWORD
可选

用于加密和解密 TLS 私钥(如果使用)的密码。

MinIO 密钥管理服务器 (KMS)

定义以下变量以使用 MinIO KMS 来管理密钥。

MINIO_KMS_SERVER

用于支持 SSE-S3 和 MinIO 后端加密操作的 MinIO 密钥管理服务 (KMS) 进程的端点。用 , 分隔多个 KMS 端点。

MINIO_KMS_ENCLAVE

存在密钥和身份的 MinIO KMS Enclave。

MINIO_KMS_SSE_KEY

当调用未指定密钥身份时,用于 SSE-S3 加密的默认密钥。

MINIO_KMS_API_KEY

用于验证 MinIO KMS 服务的凭据。

静态密钥文件

提供用于加密的静态 KMS 密钥或密钥文件。

MINIO_KMS_SECRET_KEY

静态 KMS 密钥的 base64 形式,格式为 <key-name>:<base64-32byte-key>。实现 KMS API 的子集。

MINIO_KMS_SECRET_KEY_FILE

读取静态 KMS 密钥的文件路径。