

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

# 删除外部密钥存储
<a name="delete-xks"></a>

删除外部密钥存储库时， AWS KMS 会从中删除有关该外部密钥存储的所有元数据 AWS KMS，包括有关其外部密钥存储代理的信息。此操作不会影响[外部密钥存储代](keystore-external.md#concept-xks-proxy)[理、外部密钥管理器](keystore-external.md#concept-ekm)、[外部密钥](keystore-external.md#concept-external-key)或您为支持外部密钥存储而创建的任何 AWS 资源，例如 Amazon VPC 或 VPC 终端节点服务。

在删除外部密钥存储之前，必须从密钥存储中[删除所有 KMS 密钥](deleting-keys.md)，并从其外部密钥存储代理[断开密钥存储](xks-connect-disconnect.md)。否则，尝试删除密钥存储将失败。

删除外部密钥存储是不可逆的操作，但您可以创建新的外部密钥存储并将其与同一个外部密钥存储代理和外部密钥管理器相关联。但是，即使您可以访问相同的外部密钥材料，也无法在外部密钥存储中重新创建对称加密 KMS 密钥。 AWS KMS 在每个 KMS 密钥独有的对称密文中包含元数据。此安全功能确保只有加密数据的 KMS 密钥才能解密数据。

与其删除外部密钥存储，不如考虑断开连接。当外部密钥存储断开连接时，您可以管理外部密钥存储库及其它， AWS KMS keys 但不能在外部密钥存储中创建或使用 KMS 密钥。您可以随时重新连接外部密钥存储并恢复使用其 KMS 密钥来加密和解密数据。我们不对已断开连接的外部密钥存储代理或其不可用的 KMS 密钥收取任何费用。

您可以在 AWS KMS 控制台中或使用[DeleteCustomKeyStore](https://docs.aws.amazon.com/kms/latest/APIReference/API_DeleteCustomKeyStore.html)操作来删除您的外部密钥存储。

## 使用控制 AWS KMS 台
<a name="delete-xks-console"></a>

您可以使用 AWS KMS 控制台删除外部密钥存储库。

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

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

1. 在导航窗格中，选择 **Custom key stores**（自定义密钥存储）、**External key stores**（外部密钥存储）。

1. 找到表示要删除的外部密钥存储的行。如果外部密钥存储的 **Connection state**（连接状态）不是 **DISCONNECTED**（已断开连接），则必须[断开外部密钥存储](about-xks-disconnecting.md#disconnect-xks-console)，然后才能将其删除。

1. 从 **Key store actions**（密钥存储操作）菜单中选择 **Delete**（删除）。

在操作完成后，会显示一条成功消息，并且外部密钥存储不再显示在密钥存储列表中。如果操作失败，则会显示一条错误消息，描述问题并提供有关如何解决该问题的帮助。如果您需要更多帮助，请参阅[排查外部密钥存储的问题](xks-troubleshooting.md)。

## 使用 AWS KMS API
<a name="delete-xks-api"></a>

要删除外部密钥存储库，请使用[DeleteCustomKeyStore](https://docs.aws.amazon.com/kms/latest/APIReference/API_DeleteCustomKeyStore.html)操作。如果操作成功，则 AWS KMS 返回一个 HTTP 200 响应和一个没有属性的 JSON 对象。

首先，断开外部密钥存储的连接。在运行此命令之前，请将示例自定义密钥存储 ID 替换为有效 ID。

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

断开外部密钥存储后，您可以使用该[DeleteCustomKeyStore](https://docs.aws.amazon.com/kms/latest/APIReference/API_DeleteCustomKeyStore.html)操作将其删除。

```
$ aws kms delete-custom-key-store --custom-key-store-id cks-1234567890abcdef0
```

要确认外部密钥存储已删除，请使用[DescribeCustomKeyStores](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeCustomKeyStores.html)操作。

```
$ aws kms describe-custom-key-stores
            
{
    "CustomKeyStores": []
}
```

如果您指定的自定义密钥库名称或 ID 已不存在，则 AWS KMS 会返回`CustomKeyStoreNotFoundException`异常。

```
$ aws kms describe-custom-key-stores --custom-key-store-id cks-1234567890abcdef0

An error occurred (CustomKeyStoreNotFoundException) when calling the DescribeCustomKeyStore operation:
```