

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

# 将 TLS 证书存储在 Amazon Secrets Manager
<a name="emr-ranger-tls-certificates"></a>

安装在 Amazon EMR 集群上的 Ranger 插件和 Ranger 管理服务器必须通过 TLS 进行通信，以确保发送的策略数据和其它信息在被拦截时无法读取。EMR 还要求插件通过提供自己的 TLS 凭证并执行双向 TLS 身份验证来对 Ranger Admin 服务器进行身份验证。此设置需要创建四个凭证：两对私有和公有 TLS 凭证。有关将凭证安装到 Ranger Admin 服务器的说明，请参阅[设置 Ranger Admin 服务器，以便与 Amazon EMR 集成](emr-ranger-admin.md)。要完成设置，安装在 EMR 集群上的 Ranger 插件需要两个凭证：管理服务器的公有 TLS 凭证，以及插件将用于对 Ranger 管理服务器进行身份验证的私有凭证。要提供这些 TLS 证书，它们必须在 EMR 安全配置中 Amazon Secrets Manager 并提供。

**注意**  
强烈建议（但不是必需）为每个应用程序创建一个凭证对，以降低其中一个插件凭证遭到破坏时的影响。

**注意**  
您需要在凭证过期日期前跟踪和转动凭证。

## 凭证格式
<a name="emr-ranger-tls-cert-format"></a>

无论 Amazon Secrets Manager 是私有插件证书还是公共 Ranger 管理员证书，将证书导入到都是一样的。在导入 TLS 凭证之前，必须确认凭证采用 509x PEM 格式。

公有凭证的示例格式如下：

```
-----BEGIN CERTIFICATE-----
...Certificate Body...
-----END CERTIFICATE-----
```

私有凭证的示例格式如下：

```
-----BEGIN PRIVATE KEY-----
...Private Certificate Body...
-----END PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
...Trust Certificate Body...
-----END CERTIFICATE-----
```

私有凭证还应包含信任凭证。

您可以通过运行以下命令验证是否采用的格式是否正确：

```
openssl x509 -in <PEM FILE> -text
```

## 将证书导入到 Amazon Secrets Manager
<a name="emr-ranger-tls-cert-import"></a>

在 Secrets Manager 中创建 Secret 时，在 **secret type**（密钥类型）下选择 **Other type of secrets**（其他类型密钥）并将 PEM 编码的凭证粘贴到 **Plaintext**（明文）字段中。

![将证书导入到 Amazon Secrets Manager。](http://docs.amazonaws.cn/emr/latest/ManagementGuide/images/ranger-tls-cert-import.png)
