Key Management 常见问题解答

常见问题

什么是 Oracle Cloud Infrastructure Key Management Service (KMS)?

Oracle Cloud Infrastructure (OCI) Key Management Service (KMS) 是一项基于云技术的服务,它可集中管理和控制 OCI 中存储的数据的加密密钥。作为一款客户托管式加密工具,OCI KMS 提供以下服务:

  • OCI Vault:OCI Vault 是一项客户托管式加密服务,可帮助您控制托管在 OCI 硬件安全模块 (HSM) 中的密钥,而 HSM 由 Oracle 进行管理。OCI Vault 提供以下选项:
    • Virtual Vault:Virtual Vault 是一项多租户加密服务,它将您的密钥存储在同时托管其他客户密钥的 HSM 分区中。OCI Vault 默认提供此项加密服务。
    • Private Vault:Private Vault 是一项单租户加密服务,它将您的密钥存储在一个使用与租户隔离的专用核心的专用 HSM 分区中。
  • OCI Dedicated KMS:OCI Dedicated KMS 是一项单租户 HSM 分区即服务,可提供完全隔离的环境来存储和管理加密密钥。该服务即将推出。OCI Dedicated KMS 与 Private Vault 的区别在于控制 HSM 分区的方式。在使用 OCI Dedicated KMS 时,您可以控制和主张 HSM 分区的所有权,并使用标准接口(例如 PKCS#11)执行加密操作,但 HSM 分区的安全和固件打补丁等工作仍由 Oracle 负责。
  • OCI External KMS:External KMS 支持您使用第三方密钥管理系统来保护 OCI 服务中的数据。您可以控制 OCI 外部的密钥和 HSM,并负责管理这些 HSM。由于主密钥始终存储在 OCI 外部且无需导入到 OCI External KMS 中,因此加密和解密操作均发生在 OCI 外部。

要详细了解 OCI 加密产品,请参阅此博客

OCI KMS 满足哪些安全性和合规性要求?

OCI KMS 使用符合联邦信息处理标准 (FIPS) 140-2 安全级别 3 安全认证的 HSM 保护您的密钥。点击此处,访问 NIST 加密模块验证计划 (CMVP) 网站查看 FIPS 认证。

OCI KMS 已通过功能和安全控制验证,可帮助您满足 PCI DSS 3.2.1 的加密和密钥管理要求(详见第 3.5 和 3.6 节)。

OCI KMS 支持哪些功能或特性?

OCI KMS 支持多种功能,使您能够控制您的密钥并确保为 OCI 服务中的数据提供必要的安全保护。以下是 OCI KMS 中各个服务的关键功能表格。

功能 Virtual vault Private vault Dedicated KMS(即将推出) External KMS
FIPS 140-2 Level 3 HSM 外部
对称 (AES) 加密
非对称(RSA 和 ECDSA)加密
软件密钥 外部
备份/恢复
跨区域复制 即将推出
自带密钥 外部
OCI 服务集成(存储、数据库、SaaS)
自动秘钥轮换 即将推出 即将推出
审计日志
已安排的删除

Oracle 如何在区域中确保密钥的高可用性?密钥存储在哪些地理区域?

Oracle 使用节点和 HSM 集群将密钥副本存储在创建密钥的同一区域中,这使我们能够针对密钥管理提供 99.9% 的服务等级协议 (SLA) 和 99.99% 的服务水平目标 (SLO)。请参阅 Oracle PaaS 和 IaaS 公有云服务支持文档

密钥仅在其创建的区域中存储和使用。如果要将密钥备份/复制到领域中的其他区域以满足合规性或 DR 要求,可以使用跨区域备份和恢复或跨区域复制。

OCI KMS 与 Oracle Key Vault (OKV) 有何区别?

OCI KMS 是云原生密钥管理服务,Oracle 推荐将其用于所有云技术应用。OCI KMS 原生集成与存储、数据库和 SaaS 服务(例如 FA)相关的许多 OCI 服务。如果您希望在 Oracle Cloud 中集中进行密钥管理,并为您的所有云技术应用寻找一个按量计费的托管服务,Oracle 推荐使用 OCI KMS。

Oracle Key Vault 是 Oracle 推出的另一款密钥管理产品。Oracle Key Vault 旨在为本地部署环境(包括 Oracle Exadata Cloud@Customer 和 Oracle Autonomous Database—Dedicated)和 OCI 中运行的启用 TDE 的 Oracle Databases 提供密钥管理服务,并为加密的 Oracle GoldenGate 跟踪文件和加密的 Oracle Automatic Storage Management Cluster File Systems 提供密钥管理服务。

哪些 OCI 区域支持 OCI KMS?在何处可以找到 OCI KMS 资源?

OCI KMS 在所有 OCI 区域和领域可用,包括政府云区域、EU Sovereign Cloud、Oracle National Security Regions 和 OCI Dedicated Region Cloud@Customer。您可以查看 Oracle 文档和博客,详细了解区域可用性和 OCI KMS 产品。

Vault

什么是 OCI Vault?

OCI Vault 是一项安全且具有弹性的全托管服务,可让您专注于数据加密需求,而不必担心实现高可用性所需的耗时的管理任务,例如硬件供应和软件打补丁。Vault 使用符合联邦信息处理标准 (FIPS) 140-2 安全级别 3 安全认证的 HSM 保护您的密钥。OCI Vault 是 Oracle 推出的原生 Gen 2 Cloud 加密服务。

Vault 支持不同类型的加密密钥 — 对称(AES 密钥)和非对称(RSA 和 ECDSA 密钥)— 以及一些通用工作负载,包括 Oracle Exadata Cloud Service、Oracle Autonomous Database、Transparent Data Encryption in Oracle Database 以及非数据库工作负载。

OCI Vault 分为两类:Private Vault 和默认 Virtual Vault。您所创建的 Vault 类型将决定密钥的隔离度和性能。每一个租户可以拥有零个到多个 Vault。

Private Vault 可在 HSM 上提供专用分区(单租户)。分区是 HSM 的物理边界,并与其他分区相隔离。Private Vault 可为加密操作提供更好、更一致的每秒事务处理数。这些实例是单租户 HSM 实例。此外,Private Vault 还提供其他功能,例如跨区域复制、跨区域备份和密钥恢复。

默认的 Virtual Vault 使用多租户分区,提供中等隔离级别。

两个 Vault 选项都支持您通过以下方式创建存储的主加密密钥:

  • HSM 密钥:受 HSM 保护的主加密密钥存储在 HSM 上,且无法从 HSM 导出。所有涉及密钥的加密操作也都在 HSM 上进行。这些密钥符合 FIPS 3 级。
  • 软件密钥:受软件保护的主加密密钥存储在服务器上,可以从服务器导出以便在客户端上执行加密操作,无需在服务器上操作。软件保护的密钥将由 HSM 上的根密钥静态加密。这些密钥符合 FIPS 1 级。

OCI Vault 提供哪些功能?

OCI Vault 提供以下密钥管理功能:

  • 创建您自己的加密密钥来保护数据
  • 自带密钥
  • 轮换密钥
  • 使用非对称密钥通过签名和验证操作创建和验证数字签名
  • 支持跨区域备份和恢复您的 Vault 和密钥(仅限 Private Vault)
  • 支持跨区域复制 Vault 和密钥(仅限 Private Vault)
  • 临时禁用密钥以保护数据
  • 为不再使用的密钥和 Vault 预先安排删除时间
  • 使用 OCI IAM 策略对密钥和 Vault 的管理和使用限制细粒度权限。
  • 使用 Oracle Audit and Database Firewall 监视密钥和 Vault 生命周期状态
  • 无缝集成 OCI 内部服务:Oracle Exadata Cloud Service、Oracle Autonomous Database-Dedicated 和 Oracle Cloud Infrastructure (OCI) Block Storage、File Storage、Object Storage、Streaming 和 Container Engine for Kubernetes。

在 OCI Vault 中,您可以创建高级加密标准 (AES-GCM)、Rivest-Shamir-Adleman (RSA) 和椭圆曲线数字签名算法 (ECDSA) 密钥。对于 AES 密钥,您可以选择三种密钥长度:AES-128、AES-192 和 AES-256。我们推荐使用 AES-256。OCI Vault 支持以下非对称密钥类型:RSA 2048、RSA 3072、RSA 4096、NIST P-256、NIST P384 和 ECC_NIST521。

您可以创建和使用 AES 对称密钥和 RSA 非对称密钥进行加密和解密,还可以使用 RSA 或 ECDSA 非对称密钥对数字消息进行签名。

有关更多详细信息和入门指南,请参阅 OCI Vault 概述

当使用 OCI Vault 时,我的数据在何处加密?

您可以直接将数据提交至密钥管理 API,使用存储在 Vault 中的主加密密钥进行加密和解密。此外,您还可以使用信封加密方法在应用和 OCI 服务中对数据进行本地加密。

借助信封加密,您可以通过密钥管理 API 来生成和检索数据加密密钥 (DEK)。DEK 并不是由密钥管理服务存储或管理,而是由您的主加密密钥加密。您的应用可以使用 DEK 来加密数据,并将加密的 DEK 与数据存储在一起。当应用希望解密数据时,您应当在加密的 DEK 上调用解密至密钥管理 API 来检索 DEK。您可以使用 DEK 在本地解密数据。

为何要使用信封加密?为何不将数据发送至 OCI Key Management Service 和 OCI Vault 直接加密?

密钥管理支持发送最多 4 KB 数据进行直接加密。此外,信封加密可以提供显著的性能优势。当直接使用密钥管理 API 加密数据时,需要通过网络来传输数据。信封加密可减少网络负载,因为只需要通过网络请求和传输非常小的 DEK。DEK 将在您的应用中或加密 OCI 服务中本地使用,而不需要发送整个数据块。

是否可以自带密钥 (BYOK) 到 OCI Vault?

可以。您可以将密钥副本从密钥管理基础设施导入到 OCI Vault 中,并与任何集成的 OCI 服务一起使用,也可以从您自己的应用中使用它。您可以导入所有密钥算法:AES、RSA 和 ECDSA 密钥。OCI Vault 支持导入两种类型的密钥 — HSM 和软件密钥。注意:无法从 HSM 中导出 HSM 密钥。

我可以轮换密钥吗?

可以。您可以根据安全治理和法规遵从需求定期轮换密钥,或者在发生安全事件时临时更换密钥。使用控制台、API 或 CLI 定期轮换密钥(例如,每隔 90 天轮换一次)将限制单一密钥保护的数据量。

注意:轮换密钥并不会自动对之前使用旧密钥版本加密的数据进行重新加密;而是在客户下一次修改该数据时对其进行重新加密。如果您怀疑某个密钥已被泄露,则应当对该密钥保护的所有数据进行重新加密,并禁用之前的密钥版本。

我可以删除 Vault 或密钥吗?

可以,但并非立即删除。您可以配置等待周期(从 7 天到 30 天),预先安排某个 Vault、密钥或密钥版本的删除时间。

对于 Vault 删除,在等待期结束时将删除 Vault 以及 Vault 中创建的所有密钥,并且不再可以访问受这些密钥保护的所有数据。Vault 在删除后不可恢复。

您还可以禁用密钥,这将阻止使用该密钥进行任何加密/解密操作。

我可以将在一个区域中创建的密钥传输到其他区域并使用密钥吗?

可以。Vault 支持跨区域复制密钥和 Vault。您可以将 Private Vault 从一个区域复制到另一个区域,将该 Vault 及其包含的密钥用于满足合规性要求或缩短延迟。

为 Private Vault 配置跨区域复制时,Vault 服务会在初始 Vault 和目标区域 Vault 之间自动同步任何密钥或密钥版本的创建、删除、更新或移动操作。服务从中复制数据的 Vault 称为源 Vault。服务将数据从源 Vault 复制到目标区域中的 Vault 称为 Vault 副本。该服务支持对目标区域中的 Vault 和密钥执行加密操作。

OCI Vault 还支持对 Private Vault 执行跨区域备份和恢复,以便在除创建密钥的区域以外的其他区域中使用密钥。备份和恢复流程符合 FIPS 要求,因为不会导出实际密钥材料,而是导出表示密钥材料的二进制对象。恢复操作仅适用于 OCI 托管的 HSM。

OCI Key Management Service 和 OCI Vault 如何收费?

具体计费取决于所创建的 Vault 类型。

默认根据密钥版本数量对 Vault 进行收费。受软件保护的密钥是免费的,但对于受 HSM 保护的密钥,每个密钥版本的费用是 53 美分。(前 20 个密钥版本免费)。然而,如果您创建了一个 Private Vault(单租户 HSM),则采用按小时计费的方式。该定价从创建 Vault 之时开始,一直持续到安排删除 Vault 为止。您无需为 Private Vault 中的密钥版本付费。

Oracle 不会根据 Vault 和密钥为任何管理或加密操作向服务发出的 API 请求数量计费。

更多详细信息请参阅 Oracle Cloud Security 定价

已安排删除的密钥:您不需要为已计划删除的密钥付费。如果您取消密钥删除计划,则计费将恢复。

OCI Vault 的默认限额是多少?

Private Vault 默认限额为 0。用户需要请求增加限额才能使用。启用 Private Vault 后,用户将获得 1000 个软限制和 3000 个对称密钥版本的硬限制。

使用默认的 Virtual Vault 存储密钥则没有任何硬性限制。默认 10 个 Vault,每个 Vault 100 个密钥。

Vault 中存储的所有密钥版本均计入此限制,无论密钥处于启用或禁用状态。

OCI Vault 限额受 OCI 服务限额的约束。所有租户都将设置默认限制。客户可以点击此处,按照 Oracle Cloud Infrastructure 文档中描述的步骤来请求增加存储在 Vault 中的密钥的服务限额。启用和禁用的密钥都将计入限制,因此 Oracle 建议删除不再使用的已禁用密钥。

谁可以使用和管理 OCI Vault 中的密钥?我是否可以查看谁更改了密钥和 Vault 的生命周期状态?

在使用 OCI Key Management Service 加密或解密数据时,只有通过 OCI IAM 策略授权的用户、组或服务才能管理和使用密钥。您可以实施细粒度使用和管理策略,为特定用户授予特定权限。

您可以使用 OCI Audit 中的日志跟踪生命周期状态更改,该日志中将显示租户中所有 Vault、密钥或密钥版本的所有 OCI Vault 管理请求详细信息,例如创建、轮换、禁用等。

Dedicated Key Management Service

即将推出

External Key Management Service

什么是 OCI External Key Management Service (OCI External KMS)?

OCI External KMS 支持用户使用在 OCI 外部存储和管理的加密密钥。它不仅能满足关于在 OCI 以外或本地存储加密密钥的监管要求,还能提供更高的加密密钥控制力。有关更多详细信息,请参阅此博客

OCI External KMS 可提供哪些优势?

它能够满足以下需求:

  • 数据主权、合规和监管:OCI External KMS 支持用户自主控制加密密钥,按需选择密钥存储位置。这尤其适用于必须满足严格的数据主权要求(例如欧盟通用数据保护条例 (GDPR))的企业和组织。
  • 信任和保证:OCI External KMS 支持用户自主持有和管理加密模块,自行托管加密密钥。这有助于企业和组织向最终用户、合作伙伴以及利益相关方提供加密过程控制保证。

使用 OCI External KMS 时有哪些注意事项?

OCI External KMS 支持用户更有效地控制加密密钥,但用户必须履行相应的操作职责,即在本地管理和维护加密密钥以及硬件安全模块 (HSM)。与现有 OCI Vault 服务(Oracle 代表客户托管和管理 HSM 基础设施)相比,这是一种截然不同的所有权模式。

如何在 OCI External KMS 中轮换密钥?

要在 OCI External KMS 中轮换密钥(也称为密钥引用),您需要先按照以下步骤在 Thales CipherTrust Manager 中轮换密钥,因为密钥材料存储在 OCI 外部。

  • Thales CipherTrust Manager 中添加一个新的外部密钥版本

在 OCI 中,您可以点击 Rotate Key Reference,然后输入上一步骤中的 External Key Version ID

OCI External KMS 支持哪些 OCI 服务?

OCI External KMS 支持对称加密密钥,兼容与 OCI Vault 集成的应用。用户无需修改应用即可使用 OCI External KMS,如同在 OCI Vault 中一样使用和关联密钥并实现同样高达 99.9% 的 SLA。

以下服务与 OCI Vault 集成,无需进行任何修改即可使用 OCI External KMS:

  • Oracle Cloud Infrastructure Object Storage、Block Volume 和 File Storage
  • Oracle Cloud Infrastructure 之 Container Engine for Kubernetes
  • Oracle Database,包括 Oracle Autonomous Database on Dedicated Exadata Infrastructure、Oracle Autonomous Database on Shared Exadata Infrastructure、Oracle Database Cloud Service 以及 Database as a Service
  • Oracle Fusion Cloud Applications

如果在 OCI External KMS 中通过 Thales CipherTrust Manager 停用、阻止或删除密钥,会发生什么情况?我还能访问我在 OCI 中的数据吗?

使用 OCI External KMS 时,OCI 不访问任何加密密钥材料。当用户在 Thales CipherTrust Manager 中阻止一个密钥后,OCI 无法使用密钥引用来解密数据和执行任何操作。

然后,您还可以通过 OCI 控制台禁用/删除密钥引用。

OCI External KMS 是否支持跨区域复制密钥/Vault?

OCI External KMS 当前不支持跨区域复制密钥/Vault。

OCI External KMS 如何定价?

OCI External KMS 定价为 3 美元/密钥版本/月,除此之外不对密钥版本的使用收取任何其他费用。其软性服务限额为 10 个 Vault 和 100 个密钥版本/Vault。请联系 Thales,详细了解 CipherTrust Manager 定价和服务限额。

如何获取关于 OCI External KMS 的更多信息?

您可以阅读技术文档或在 OCI 控制台中试用 OCI External KMS,了解有关 OCI External KMS 的更多信息。请在 OCI 导航菜单中选择 Identity and Security,然后依次选择 Key Management and Secret Management 和 External Key Management,访问 External KMS

注:为免疑义,本网页所用以下术语专指以下含义:

  1. Oracle专指Oracle境外公司而非甲骨文中国。
  2. 相关Cloud或云术语均指代Oracle境外公司提供的云技术或其解决方案。