使用没有 OCI API 网关的 Thales CipherTrust Manager 设置 OCI Hold Your Own Key

简介

本教程提供了在不使用 Oracle Cloud Infrastructure (OCI) API Gateway 选项的情况下,通过 Thales CipherTrust Manager (CTM) 设置“Hold Your Own Key (HYOK)”的分步说明。通过此方法,您可以完全控制加密密钥,同时与支持外部密钥管理的 OCI 服务集成。

图像

我们将介绍整个配置,首先查看网络架构并在 OCI 中设置应用程序集成,然后配置 Thales CipherTrust Manager 以通过专用端点直接与 Oracle Cloud Infrastructure External Key Management Service (OCI External Key Management Service) 通信。该教程还包括创建和注册身份提供者、OCI 租户、外部 Vault 和密钥,以及使用这些外部密钥测试对客户管理的对象存储的访问。

在本教程结束时,您将拥有完全可操作的 HYOK 设置,可以使用 Thales CipherTrust Manager 上托管的外部托管密钥来加密和控制对 OCI 资源的访问,而无需中间 OCI API 网关。

图像

注意:在本教程中,术语 Thales CipherTrust Cloud Key Manager (CCKM) 和 Thales CipherTrust Manager (CTM) 可以互换使用。两者均指同一产品。

本教程基于教程中建立的 technical foundation: Set Up Two Thales CipherTrust Cloud Key Manager Appliances in OCI,Create a Cluster between them,and Configure One as a Certificate Authority

如果要实施使用带有 OCI API Gateway 的 Thales CipherTrust Manager 实施自有密钥 (Hold Your Own Key,HYOK) ,请遵循以下教程:在 OCI API Gateway 中使用 CipherTrust Manager 设置 OCI Hold Your Own Key

目标

图像

下图说明了本教程中设置所有步骤的组件和配置。

图像

任务 1:查看云网络体系结构

在我们深入了解使用 Thales CipherTrust Manager 配置 Hold Your Own Key (HYOK) 的技术步骤之前,必须了解此设置所在的云网络体系结构。

在此场景中,使用了三个 OCI 区域:

使用远程对等连接 (Remote Peering Connections,RPC) 在两个模拟的内部部署数据中心之间建立连接。但是,对于本教程,VPN 设置、RPC 配置和中心辐射型 VCN 体系结构详细信息被视为超出范围,不会被覆盖。

本教程的重点是使用部署在阿姆斯特丹 (AMS) 区域中的 Thales CipherTrust Manager 设置 HYOK,该区域是模拟的内部部署数据中心之一。将从此 Thales CipherTrust Manager 实例执行所有密钥管理操作。

通过外部密钥管理器专用,OCI 可以与外部 Thales CipherTrust Manager 安全通信,并将部署在主 OCI 区域中的一个分支 VCN 中。这可确保 OCI 服务与外部密钥管理器之间的安全直接通信路径,而不会向公共互联网公开流量。

此架构通过在明确定义的安全网络边界内隔离密钥管理,为 OCI 中的敏感工作负载提供强大的安全性和合规性状况。

下图显示了完整的体系结构。

图像

任务 2:创建机密资源应用程序并关联机密客户端应用程序(应用程序集成)并在 OCI 中收集客户端和密钥

要启用 HYOK 与 Thales CipherTrust Manager 的集成,必须在 OCI 和外部密钥管理器之间建立信任。

这是通过在 OCI Identity and Access Management (OCI IAM) 中注册两个关键组件来实现的:机密资源应用程序机密客户端应用程序。这些功能对于验证和授权 OCI 与 Thales CipherTrust Manager 之间的通信至关重要。

通过此设置,Thales CipherTrust Manager 可以通过 OCI IAM 到 OAuth 2.0 进行验证。机密客户机代表外部密钥管理器执行操作,而机密资源定义了访问和信任配置的范围。如果没有这些组件,OCI 无法验证外部密钥源或安全地与外部密钥源通信。

下图说明了此步骤中的组件和配置设置。

图像

注:

任务 3:从 OCI 收集身份域 URL

要在 OCI 与 Thales CipherTrust Manager 之间启用基于 OAuth 的通信,需要在 Thales CipherTrust Manager 中配置身份提供者期间提供身份域 URL

任务 4:在 Thales CipherTrust Manager 中创建身份提供者

在此任务中,您将在 Thales CipherTrust 管理器中配置身份提供者。此设置允许 Thales CipherTrust Manager 使用在任务 3 中创建的 OAuth 2.0 身份证明通过 OCI 进行验证。

下图说明了此任务中的组件和配置设置。

图像

任务 5:在 Thales CipherTrust Manager 中添加 OCI 租户

在 Thales CipherTrust Manager 中配置身份提供者后,下一个任务是注册 OCI 租户。这允许 Thales CipherTrust Manager 使用以前配置的 OAuth 身份证明代表您的 OCI 环境管理外部 Vault 和密钥。

下图显示了在此任务中设置的组件和配置。

图像

任务 6:在 OCI 中为外部密钥管理器服务创建专用端点

要安全地将 OCI 连接到 Thales CipherTrust Manager,而不向公共互联网公开流量,必须为 OCI 外部密钥管理服务创建专用端点

这可确保 OCI 与 Thales CipherTrust Manager 之间的所有通信都通过受控的专用网络路径进行。

请确保满足以下先决条件:

下图说明了此任务中的组件和配置设置。

图像

任务 7:在 Thales CipherTrust Manager 中添加外部 Vault

实施 OCI 租户和专用端点后,下一个任务是在 Thales CipherTrust Manager 中添加 External Vault 。Thales CipherTrust Manager 中的外部 Vault 是一个逻辑容器,它映射到 OCI 中的外部密钥管理 Vault,使 Thales CipherTrust Manager 能够管理用于 HYOK 加密的密钥。

下图说明了此任务中的组件和配置设置。

图像

配置后,此 Vault 将成为用于存储 OCI 服务将引用的外部密钥的目标位置。它可以桥接您的 OCI 环境和 CipherTrust 管理的密钥,从而全面控制 HYOK 模型中的加密操作。

任务 8:创建 OCI External Key Management Service Vault

在 Thales CipherTrust Manager 中定义了外部 Vault 后,下一个任务是在 OCI 控制台中创建对应的外部密钥管理 Vault

此 OCI Vault 将链接到您的 Thales CipherTrust Manager,OCI 服务将使用外部密钥执行加密和解密操作。

下图说明了此任务中的组件和配置设置。

图像

OCI 现在将使用指定的专用端点连接到 Thales CipherTrust Manager。此 Vault 处于活动状态后,它将成为 OCI 与 CCKM 管理的外部密钥进行交互的界面,从而为 OCI Object Storage、OCI Block Volumes 等 OCI 服务提供 HYOK 支持。稍后,我们将使用 OCI Object Storage 执行一些测试。

任务 9:在 Thales CipherTrust Manager 中添加外部关键字

通过在 Thales CipherTrust Manager 中设置外部 Vault 并链接到 OCI,下一个任务是创建或导入 OCI 将用于启用 HYOK 的服务的外部加密密钥。

这些密钥安全地驻留在 Thales CipherTrust Manager 中,由 OCI 通过外部密钥管理界面引用。根据您的组织要求,您可以直接在 Thales CipherTrust Manager 中生成新密钥或导入现有密钥。

下图说明了此任务中的组件和配置设置。

图像

添加密钥后,OCI 将通过外部密钥管理 Vault 提供该密钥。但是,要允许 OCI 服务使用该密钥,您必须在 OCI 控制台中创建密钥参考,我们将在下一个任务中介绍该参考。

注:

任务 10:在 OCI 中创建密钥引用

外部密钥创建或导入 Thales CipherTrust 管理器后,下一个任务是在 OCI 控制台中创建密钥引用。密钥引用用作指针,允许 OCI 服务通过外部密钥管理 Vault 访问和使用存储在 Thales CipherTrust Manager 中的外部密钥。

下图说明了此任务中的组件和配置设置。

图像

OCI 现在会将此密钥引用与 Thales CipherTrust Manager 中管理的外部密钥关联。这使得 OCI Object Storage、OCI Block Volumes 等 OCI 服务能够通过专用端点将加密请求发送到外部密钥。相比之下,关键材料本身完全由您控制。

我们将通过将密钥引用附加到 OCI 对象存储桶来立即测试密钥引用,以验证集成是否按预期工作。

任务 11:使用客户管理的密钥创建 OCI 对象存储桶

您可以使用 OCI 中引用的外部密钥加密资源。在此任务中,我们将创建一个 OCI Object Storage 存储桶,该存储桶使用通过外部密钥管理 Vault 在 Thales CipherTrust Manager 上托管的外部客户管理的密钥。

此设置可确保存储桶中存储的所有对象使用您完全控制的密钥进行加密,从而满足严格的合规性、主权或内部策略要求。

下图说明了此任务中的组件和配置设置。

图像

创建存储桶后,存储在其中的所有数据都将使用 Thales CipherTrust Manager 管理的外部密钥进行加密。这可确保 OCI 依赖您的关键基础设施进行访问和控制,从而实现完整的“自持密钥”(HYOK) 功能。

假设外部密钥变得不可用(例如,在 Thales CipherTrust Manager 中禁用或阻止)。在这种情况下,将拒绝对存储桶及其内容的访问,从而为您的数据安全状况提供强大的控制点。这是我们将在下一个任务中测试的内容。

任务 12:在 Thales CipherTrust Manager 和 OCI 中块和解锁 Oracle 密钥并测试 OCI 对象存储存储桶可访问性

"Hold Your Own Key"(自持密钥)(HYOK) 模式的主要优势之一是能够对加密密钥保持完全的运行控制,包括随时阻止或取消阻止加密密钥。本节演示如何使用 Thales CipherTrust Manager 通过阻止或取消阻止外部密钥来控制对 Oracle 托管的对象存储桶的访问。

阻止密钥可以有效地限制对使用该密钥加密的任何 OCI 资源的访问,而不会删除密钥或数据。取消阻止将恢复访问。

图像

图像

现在,让我们再次解锁 Thales CipherTrust Manager 中的密钥。

下图说明了此任务中的组件和配置设置。

图像

此功能为紧急响应、法规合规性和数据主权实施提供了强大的机制,可确保您完全控制在 OCI 中访问数据的时间和方式。

后续步骤

在本教程中,我们使用 Thales CipherTrust Manager 完成了 OCI Hold Your Own Key 的设置,而无需依赖 OCI API Gateway 选项。通过按照从配置身份集成和网络到部署外部 Vault 和密钥的步骤,您已启用安全且合规的密钥管理架构,可以在该架构中全面控制加密密钥。

此设置可确保 OCI Object Storage 等 OCI 服务使用外部管理的密钥进行加密操作,而密钥材料完全由您监管。您还可以看到 HYOK 的强大程度,只需在 Thales CipherTrust Manager 中切换密钥状态即可阻止和取消阻止对云资源的访问。

通过不使用 OCI API Gateway,您可以简化架构,同时通过专用网络和基于 OAuth 的身份信任来实施坚定的安全边界。

现在,您可以在生产就绪的 HYOK 实施中支持企业安全策略、法规合规性和数据主权要求,从而全面控制您的云加密策略。

确认

更多学习资源

通过 docs.oracle.com/learn 浏览其他实验室,或者通过 Oracle Learning YouTube 频道访问更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 以成为 Oracle Learning Explorer。

有关产品文档,请访问 Oracle 帮助中心