文档

数据加密 (SSE)

MinIO 服务器端加密 (SSE) 在写入操作的一部分中保护对象,允许客户端利用服务器处理能力来保护存储层中的对象(静态加密)。SSE 还为围绕安全锁定和擦除的监管和合规性要求提供关键功能。

MinIO SSE 使用 MinIO 密钥加密服务 (KES) 和外部密钥管理服务 (KMS) 来大规模执行安全的加密操作。MinIO 还支持客户端管理的密钥管理,其中应用程序负责创建和管理用于 MinIO SSE 的加密密钥。

MinIO 支持以下作为中央密钥存储的 KMS

MinIO SSE 需要启用 网络加密 (TLS)

支持的加密类型

MinIO SSE 在功能和 API 上与 AWS 服务器端加密 兼容,并支持以下加密策略

MinIO 支持使用存储在外部 KMS 上的特定外部密钥 (EK) 启用写入存储桶的所有对象的自动 SSE-KMS 加密。客户端可以通过在写入操作的一部分中指定显式密钥来覆盖存储桶默认的 EK

对于没有自动 SSE-KMS 加密的存储桶,客户端可以改为在写入操作的一部分中指定 EK

启用服务器端加密时,MinIO 会加密后端数据。启用后,无法禁用 SSE-KMS 加密。

与 SSE-S3 和 SSE-C 相比,SSE-KMS 提供更细粒度和可自定义的加密,建议使用它而不是其他支持的加密方法。

有关在本地(非生产)MinIO 部署中启用 SSE-KMS 的教程,请参阅 快速入门

MinIO 支持使用存储在外部 KMS 上的 EK 启用写入存储桶的所有对象的自动 SSE-S3 加密。MinIO SSE-S3 支持整个部署的 一个 EK

对于没有自动 SSE-S3 加密的存储桶,客户端可以改为在写入操作的一部分中请求 SSE 加密。

启用服务器端加密时,MinIO 会加密后端数据。启用后,无法禁用 SSE-KMS 加密。

有关在本地(非生产)MinIO 部署中启用 SSE-s3 的教程,请参阅 快速入门

客户端在对象的写入操作的一部分中指定 EK。MinIO 使用指定的 EK 执行 SSE-S3。

SSE-C 不支持存储桶默认加密设置,并且要求客户端执行所有密钥管理操作。