断开外部密钥存储 - 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,这将阻止在任何加密操作中使用这些 KMS 密钥。

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

断开您的外部密钥存储

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

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

  1. 登录到 AWS Management Console,然后通过以下网址打开 AWS Key Management Service(AWS KMS)控制台:https://console.aws.amazon.com/kms

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

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

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

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

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

要断开已连接的外部密钥存储,请使用 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" } } ] }