---
schema_version: "1"
id: 3f6d47f3ffd0915da541c54e0a3131e6a90fead6821b6831e93e9e5e047f1678
title: 为数据提取加密密钥使用外部 KMS
collection: tableau
version: current
locale: zh-cn
portal_url: https://docs.salesforce.com/tableau/current/zh-cn/online/to_external_kms_extracts.md
canonical_url: https://help.tableau.com/current/online/zh-cn/to_external_kms_extracts.htm
source_site: help.tableau.com
content_type: documentation
content_hash: 9d5bab2fb3bb9df8a1e1ee5b2f657b1e52490bafde4d41f066607d8d4c906c51
description: 您可以将用于加密和解密数据提取的主密钥存储在外部密钥管理系统 (KMS) 中。通过提供对加密密钥的直接控制，使用外部 KMS 可以帮助组织增强安全状况、满足法规要求并维护数据主权。
---
[跳转到主要内容](#main-content)

# 为数据提取加密密钥使用外部 KMS

您可以将用于加密和解密数据提取的主密钥存储在外部密钥管理系统 (KMS) 中。通过提供对加密密钥的直接控制，使用外部 KMS 可以帮助组织增强安全状况、满足法规要求并维护数据主权。

有关使用外部 KMS 进行密钥管理的优势的一般信息，请参见[使用外部 KMS 进行密钥管理](https://help.tableau.com/current/online/zh-cn/to_external_kms.htm)。

注意：如果您拥有 Tableau +、Tableau Enterprise 或 Advanced Management，则从 Tableau Cloud 2026 年 2 月版开始提供用于数据提取加密的外部 KMS 功能。如果在某个时候您不再拥有 Tableau +、Tableau Enterprise 或 Advanced Management，您仍可正常使用加密对象，但将无法管理密钥。

## 设置概述

将 AWS KMS 与 Tableau 结合使用的摘要级步骤包括：

1. **AWS KMS**：[创建客户主密钥](#Create) (CMK)。
2. **Tableau Cloud**：[启用数据提取加密](#Enable)（或从使用 Salesforce KMS 的客户管理的加密密钥迁移）。
3. **Tableau Cloud**：[在 Tableau 中生成密钥](#Generate)，使用 AWS KMS 中的客户主密钥 ARN。
4. **AWS KMS**：[将 Tableau 密钥策略](#Policy) JSON 添加到 AWS 客户主密钥的策略中。
5. **Tableau Cloud**：[激活密钥](#Activate)。

### 密钥状态

使用外部 KMS 时，Tableau Cloud 中用于数据提取加密的密钥具有以下状态和功能：

- **待定** — 您生成了密钥，但尚未使用。在激活密钥之前，它不能用于写入或读取任何数据提取。
- **活动** — 密钥用于写入数据提取，以及读取它写入的数据提取。
- **已存档** — 该密钥过去处于活动状态，但已被后来的密钥取代。它不是用于写入数据提取，而是用于读取它写入的数据提取。
- **已停用** — 密钥过去处于活动状态，后来已归档，并且此后已停用。它未用于读取或写入任何数据提取。

#### 状态快速参考

| 密钥状态 | 可以写入/加密数据提取 | 可以读取/解密数据提取 |
| --- | --- | --- |
| 待定 |   |   |
| 活动 | ✓ | ✓ |
| 已存档 |   | ✓ |
| 已停用 |   |   |

## 设置详细信息

配置时先进行以下操作：

1. 登录到您的 Tableau Cloud 站点。
2. 在左侧导航窗格中选择“设置”。
3. 选择“安全”选项卡。

### 1.在 AWS KMS 中创建主密钥

Tableau 用于加密的密钥基于 [AWS KMS](https://console.aws.amazon.com/kms/) 中存在的客户主密钥 (CMK)。因此，在 Tableau 生成密钥之前，您需要在 AWS KMS 中拥有 CMK。

Tableau 密钥生成对话框包含指向 [AWS KMS](https://console.aws.amazon.com/kms/) 的链接，以便您可以创建 CMK 或获取有关现有 CMK 的信息。如果您在 AWS KMS 中需要有关密钥的帮助，请咨询您当地的密钥专家。

AWS 密钥由 Amazon 资源名称 (ARN) 唯一标识。系统要求您在 Tableau 密钥生成过程中提供 CMK ARN。密钥 ARN 的格式如下：

`arn:aws:kms:us-east-2:123456789012:key/12345678-90ab-cdef-1234-567890abcdef`

在 AWS 中创建客户主密钥后，您可以在 Tableau Cloud 中启用数据提取加密。

### 2.使用外部 KMS 启用数据提取加密

注意：启用加密后，您将无法将其禁用。同样，从客户管理的加密密钥（使用 Salesforce KMS）切换到外部 KMS 是永久性的，无法撤消。

启用外部 KMS：

1. 在“数据提取加密”部分下，选择“加密数据提取”。
2. 选择“使用外部 KMS”。
    - 如果已选择“使用 Salesforce KMS”，则您当前正在通过 Salesforce KMS 使用客户管理的加密密钥。(有关详细信息，请参见[客户管理的加密密钥](https://help.tableau.com/current/online/zh-cn/to_customer_managed_encryption_keys.htm)。)将设置更改为“使用外部 KMS”将不可逆转地从 Salesforce KMS 更改为外部 KMS。在更改 KMS 之前，请参见[“从客户管理的加密密钥迁移到外部 KMS”](https://help.tableau.com/current/online/zh-cn/to_external_kms_migrate.htm)。
3. 选择“生成密钥”。
    - 如果您要从 Salesforce KMS 迁移到外部 KMS，请阅读警告，然后选择“切换到外部 KMS”。

### 3.生成密钥

生成密钥是读写加密数据提取的第一个步骤。如果您已经有一个活动密钥，则可以生成另一个密钥，作为替换当前活动密钥的第一步。

在 Tableau 中生成密钥：

1. 在“数据提取加密”部分下，选择“生成密钥”。
2. 如果您要为站点生成第一个密钥，您将看到“配置 AWS KMS”对话框。如果您已有活动密钥，请首先继续完成“生成密钥”确认对话框。
3. 选择“启动 AWS KMS”并在需要时登录。
4. 在 AWS KMS 中，创建新密钥或查找现有密钥，然后复制密钥 ARN。如果您在 AWS KMS 中需要有关密钥的帮助，请咨询您当地的密钥专家。
5. 返回到 Tableau 的“配置 AWS KMS”对话框，并将密钥 ARN 粘贴到“来自 AWS 的密钥”字段中。
6. （可选）输入“描述”。
7. 选择“下一步”（或者，如果这是站点的第一个密钥，则选择“启用加密”）。
8. 选择“完成”以稍后将密钥策略 JSON 添加到 AWS KMS，或按照[“将密钥策略 JSON 添加到 KMS 密钥策略”](#Policy)立即执行此操作。

在将密钥策略 JSON 添加到 AWS KMS 策略然后激活它之前，该密钥不能用于读取或写入数据提取。

### 4.将密钥策略 JSON 添加到 KMS 密钥策略

新生成的密钥的状态为“待定”。在将密钥策略 JSON 添加到 AWS KMS 策略然后激活它之前，它不能用于读取或写入数据提取。

若要查看密钥策略 JSON，请从[“生成密钥”](#Generate)过程继续。

或者，如果您_未_从该过程继续：

1. 在“数据提取加密”部分下，选择相应“待定”密钥旁边的操作菜单 (...)。
2. 选择“密钥策略”。

若要将密钥策略 JSON 添加到 AWS KMS 策略，请将相关 `Statement` 对象从 Tableau 复制到 AWS KMS 中的策略 JSON。您只需要完整 JSON 文本的一部分。请记住，选择“复制密钥策略”并在文本编辑器中粘贴和编辑可能会更容易。

从 JSON 文本中，复制 `Statement` 数组中的对象。然后，在 AWS KMS 密钥的策略中，按照标准 JSON 语法将复制的文本添加到 `Statement` 数组中。（在添加新的 JSON 之前，您可能需要在现有 AWS KMS 的 `Statement` 的末尾添加一个逗号。）

示例：

突出显示的部分是要添加到 AWS KMS 策略中的部分：

```
{
    "Version": "2012-10-17",
    "Id": "sfdc-key-access-policy",
    "Statement": [{
            "Sid": "AllowSalesforceShieldKeyBroker1234567890abc",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:sts::123456789abc:assumed-role/EkmAwsKmsAccessRole/1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ12"
            },
            "Action": [
                "kms:GenerateDataKey*",
                "kms:Decrypt"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "kms:EncryptionContext:sf-auth": "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQ"
                }
            }
        }]
}
```

### 5.激活密钥

激活密钥以使用它来读取和写入新数据提取。“激活密钥”操作仅适用于“待定”密钥。

1. 在“数据提取加密”部分下，选择相应“待定”密钥旁边的操作菜单 (...)。
2. 选择“激活密钥...”。

如果您已经拥有活动密钥，则激活新密钥会将现有密钥的状态更改为“已存档”。存档的密钥仅用于读取它写入的数据提取。新密钥将变为“活动”状态，并将用于写入新数据提取以及读取它写入的数据提取。

注意：在站点上启用加密并激活第一个密钥后，Tableau Cloud 会为站点上的每个数据提取创建一个数据提取加密后台作业。这些作业被设置为最低优先级，这意味着它们仅在有额外资源时运行。现有数据提取刷新作业在数据提取加密之前运行。

## 其他操作

### 将密钥存档

存档的密钥可以读取它们写入的数据提取，但不用于写入新的数据提取。将密钥存档的唯一方法是激活新密钥。请参见[“激活密钥”](#Activate)。

### 停用密钥

停用存档的密钥，使其无法用于读取或写入任何数据提取。如果密钥已泄露，您可能会执行此操作。“停用密钥”操作仅适用于“已存档”的密钥。

停用密钥时，它不能用于读取它写入的数据提取（与已存档密钥相反，已存档密钥可以读取它写入的数据提取）。这意味着，如果没有使用活动密钥进行加密，某些基于数据提取的内容可能会停止工作。如果需要保留对使用旧密钥的基于数据提取的内容的访问权限，请确保在停用旧密钥之前使用活动密钥刷新数据提取。

注意：如有必要，您可以恢复已停用的密钥。恢复密钥会将其从“已停用”更改为“已存档”。请参见[“恢复密钥”](#Restore)。

停用密钥：

1. 在“数据提取加密”部分下，选择相应“已存档”密钥旁边的操作 (...)。
2. 选择“停用密钥...”。
3. 在文本字段中输入“停用此密钥”以确认您的操作。
4. 选择“停用密钥”。

### 恢复密钥

恢复停用的密钥，使其可用于读取它写入的数据提取。“恢复密钥”操作仅适用于“已停用” 密钥，并将其更改为“已存档”。

将密钥恢复到已存档状态时，它不会用于写入任何数据提取。它仅用于读取它写入的数据提取。

1. 登录到您的 Tableau Cloud 站点。
2. 在左侧导航窗格中选择“设置”。
3. 选择“安全”选项卡。
4. 在“数据提取加密”部分下，选择相应的“已停用”密钥旁边的操作菜单 (...)。
5. 选择“恢复密钥...”。
6. 选择“恢复密钥”。

### 删除密钥

您无法删除数据提取加密密钥。密钥只能存档（保留读取它写入的内容的能力）或停用（既不能读取也不能写入）。请参见[密钥状态](#Key)。

注意：如果您在 AWS KMS 中禁用客户主密钥 (CMK)，则从其派生的 Tableau 密钥将停止进行加密或解密。同样，如果您从 AWS KMS 中的 CMK 策略中移除 Tableau 生成的子句，则从其派生的 Tableau 密钥将停止工作。

### 查看密钥策略

“密钥策略”对话框显示用于添加到 AWS KMS 密钥策略的密钥策略 JSON。密钥策略 JSON 可以在[“生成密钥”](#Generate)过程中或之后添加。

有关详细信息，请参见[“将密钥策略 JSON 添加到 KMS 密钥策略”](#Policy)。

查看密钥的策略 JSON：

1. 在“数据提取加密”部分下，选择相应密钥旁边的操作菜单 (...)。
2. 选择“密钥策略”。

### 查看密钥历史记录

密钥历史记录表的每一行显示一个事件、事件后的密钥状态以及事件的日期和时间。

查看密钥的历史记录：

1. 在“数据提取加密”部分下，选择相应密钥旁边的操作菜单 (...)。
2. 选择“密钥历史记录”。

### 测试配置

对待定密钥使用“测试配置”操作来确定是否可以激活该密钥。对处于其他状态的密钥使用“测试配置”操作来显示它们是正常工作、应该工作还是无法工作。

测试密钥的配置：

1. 在“数据提取加密”部分下，选择相应密钥旁边的操作菜单 (...)。
2. 选择“测试配置...”。

**成功：**

- 密钥可用于对数据提取进行加密。如果密钥处于待定状态，则可以安全激活。如果密钥已经激活，则说明它正在正常工作。

**错误：**

- POLICY\_DENIED — 外部 KMS 没有允许此密钥的策略。确认您已将策略从此密钥复制到外部 KMS。
- KEY\_NOT\_FOUND — 找不到密钥，或者密钥已在 Tableau 中停用。确认 AWS KMS 密钥 ARN 和策略。
- UNKNOWN — 发生未知错误。请确保该密钥未在 AWS KMS 中禁用，然后重试。

注意：如果您在 AWS KMS 中禁用客户主密钥 (CMK)，则从其派生的 Tableau 密钥将停止进行加密或解密。同样，如果您从 AWS KMS 中的 CMK 策略中移除 Tableau 生成的子句，则从其派生的 Tableau 密钥将停止工作。