断开外部密钥存储的连接 - AWS Key Management Service

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

断开外部密钥存储的连接

当您断开具有VPC终端节点服务连接的外部密钥存储库与其外部密钥存储代理的连接时, AWS KMS 会删除其与端VPC点服务的接口端点,并删除其为支持该连接而创建的网络基础架构。具有公有端点连接的外部密钥存储不需要等效流程。此操作不会影响VPC端点服务或其任何支持组件,也不会影响外部密钥存储代理或任何外部组件。

当外部密钥存储断开连接时, AWS KMS 不会向外部密钥存储代理发送任何请求。外部密钥存储的连接状态为 DISCONNECTED。断开连接的外部KMS密钥存储中的UNAVAILABLE密钥处于密钥状态(除非它们处于待删除状态),这意味着它们不能用于加密操作。但是,您仍然可以查看和管理您的外部密钥存储库及其现有KMS密钥。

已断开连接状态被设计为临时且可逆的状态。您可以随时重新连接外部密钥存储。通常无需重新配置。不过,如果关联的外部密钥存储代理的任何属性在断开连接时发生了变化,例如轮换了代理身份验证凭证,则必须在重新连接之前编辑外部密钥存储设置

注意

当自定义密钥存储断开连接时,所有在自定义KMS密钥存储中创建密钥或在加密操作中使用现有KMS密钥的尝试都将失败。此操作可以阻止用户存储和访问敏感数据。

要更好地估计断开外部密钥存储库连接的影响,请识别外部KMS密钥存储库中的密钥并确定其过去的使用情况。

您可能出于以下原因断开外部密钥存储:

  • 编辑其属性。连接外部密钥存储时,您可以编辑自定义密钥库名称、代理URI路径和代理身份验证凭据。但是,要编辑代理连接类型、代理URI端点或VPC端点服务名称,必须先断开外部密钥存储的连接。有关详细信息,请参阅编辑外部密钥存储库属性

  • 停止与外部密钥存储代理 AWS KMS 之间的所有通信。您还可以通过禁用终端节点或VPC终端节点服务来停止与代理之间的 AWS KMS 通信。此外,您的外部密钥存储代理或密钥管理软件可能会提供其他机制来 AWS KMS 防止与代理进行通信或阻止代理访问您的外部密钥管理器。

  • 禁用外部KMS密钥存储库中的所有密钥。您可以使用 AWS KMS 控制台或DisableKey操作来禁用和重新启用外部密钥存储库中的密KMS钥。这些操作很快就会完成(视最终一致性而定),但它们一次只能对一个KMS按键起作用。断开外部密钥存储库的连接会将外部KMS密钥存储区中所有密钥的密钥状态更改为Unavailable,从而阻止它们用于任何加密操作。

  • 修复失败的连接尝试。如果连接外部密钥存储的尝试失败(自定义密钥存储的连接状态为 FAILED),则必须在尝试再次连接外部密钥存储之前将其断开。

断开外部密钥存储的连接

您可以在 AWS KMS 控制台中或使用DisconnectCustomKeyStore操作断开外部密钥存储的连接。

您可以使用 AWS KMS 控制台将外部密钥存储与其外部密钥存储代理连接起来。完成此过程大约需要 5 分钟。

  1. 登录 AWS Management Console 并在 https://console.aws.amazon.com/km s 处打开 AWS Key Management Service (AWS KMS) 控制台。

  2. 要更改 AWS 区域,请使用页面右上角的区域选择器。

  3. 在导航窗格中,选择 Custom key stores(自定义密钥存储)、External key stores(外部密钥存储)。

  4. 选择要断开连接的外部密钥存储的行。

  5. Key store actions(密钥存储操作)菜单中选择 Disconnect(断开连接)。

操作完成后,连接状态将从变DISCONNECTINGDISCONNECTED。如果操作失败,则会出现一条错误消息,描述问题并提供有关如何修复它的帮助。如果您需要更多帮助,请参阅外部密钥存储连接错误

要断开连接的外部密钥存储库,请使用DisconnectCustomKeyStore操作。如果操作成功,则 AWS KMS 返回 HTTP 200 响应和一个没有属性的JSON对象。该过程可能需要五分钟才能完成。要查找外部密钥存储库的连接状态,请使用DescribeCustomKeyStores操作。

本部分中的示例使用 AWS Command Line Interface (AWS CLI),但您可以使用任何受支持的编程语言。

此示例断开外部密钥存储库与VPC端点服务连接的连接。在运行此示例之前,请将示例自定义密钥存储 ID 替换为有效 ID。

$ aws kms disconnect-custom-key-store --custom-key-store-id cks-1234567890abcdef0

要验证外部密钥存储是否已断开连接,请使用DescribeCustomKeyStores操作。默认情况下,此操作将返回您的账户和区域中的所有自定义密钥存储。但您可以使用 CustomKeyStoreIdCustomKeyStoreName 参数(但不能同时使用两者)将响应限制到特定自定义密钥存储。DISCONNECTEDConnectionState 值表示此示例外部密钥存储不再连接到其外部密钥存储代理。

$ aws kms describe-custom-key-stores --custom-key-store-name ExampleXksVpc { "CustomKeyStores": [ { "CustomKeyStoreId": "cks-9876543210fedcba9", "CustomKeyStoreName": "ExampleXksVpc", "ConnectionState": "DISCONNECTED", "CreationDate": "2022-12-13T18:34:10.675000+00:00", "CustomKeyStoreType": "EXTERNAL_KEY_STORE", "XksProxyConfiguration": { "AccessKeyId": "ABCDE98765432EXAMPLE", "Connectivity": "VPC_ENDPOINT_SERVICE", "UriEndpoint": "https://example-proxy-uri-endpoint-vpc", "UriPath": "/example/prefix/kms/xks/v1", "VpcEndpointServiceName": "com.amazonaws.vpce.us-east-1.vpce-svc-example" } } ] }