

# 创建或导入 IVS 播放密钥
<a name="private-channels-create-key"></a>

Amazon IVS 最多允许三个用于签名和验证播放令牌的密钥对。Amazon IVS 不提供任何密钥轮换。

***导入后，无法更新播放密钥。***必须删除现有的播放密钥并导入新的密钥。

您需要生成一个 [ECDSA 公有/私有密钥对](https://en.wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm)以对 JWT 进行签名，并将公钥作为播放密钥资源上传到 Amazon IVS。然后，Amazon IVS 可以在播放请求中验证签名。

## 创建新的密钥对
<a name="private-channels-create-new-pair"></a>

创建密钥对的方法多种多样；下面我们举两个例子。

### 控制台说明
<a name="private-channels-create-new-pair-console"></a>

要在控制台中创建新的密钥对，请按照以下步骤操作。请注意，此过程仅允许您下载私有密钥。

1. 打开 [Amazon IVS 控制台](https://console.aws.amazon.com/ivs)。如果您尚未选择通道所在的区域，请选择区域。

1. 在左侧导航菜单中，选择**播放安全性 > 播放密钥**。

1. 选择 **Create playback key (创建播放密钥)**。系统会显示 **Create playback key (创建播放密钥)** 对话框。

1. 输入播放密钥的名称，然后选择**创建**。

1. Amazon IVS 将生成新的密钥对。该密钥对的公钥会保存到 Amazon Web Services 账户，用于验证任何包含使用私钥签名的令牌的播放请求。

   私钥会立即下载到计算机上，不会保存在控制台中，以后也无法下载。***务必保存好密钥，因为您之后无法检索此密钥。***

### OpenSSL 使用说明
<a name="private-channels-create-new-pair-ssl"></a>

**注意：**您可能必须先安装 [OpenSSL](https://www.openssl.org/source/)，才能按照这些说明进行操作。

要使用 OpenSSL 创建新的 P384 EC 密钥对，请按照以下步骤操作。此过程允许您访问私有密钥和公有密钥。只有当您想测试令牌的验证时，才需要公有密钥。

```
openssl ecparam -name secp384r1 -genkey -noout -out priv.pem
openssl ec -in priv.pem -pubout -out public.pem
```

现在按照以下说明导入新的公有密钥。

## 导入现有公有密钥
<a name="private-channels-import-existing-key"></a>

如果您已经有密钥对，则可以将公有密钥导入 IVS。我们的系统不需要私有密钥，但您可以使用私有密钥来签署令牌。

### 控制台说明
<a name="private-channels-create-new-pair-console"></a>

要使用控制台导入现有公有密钥，请执行以下操作：

1. 打开 [Amazon IVS 控制台](https://console.aws.amazon.com/ivs)。如果您尚未选择通道所在的区域，请选择区域。

1. 在左侧导航菜单中，选择**播放安全性 > 播放密钥**。

1. 选择 **Import (导入)**。系统会显示 **Import playback key (导入播放密钥)** 对话框。

1. 为导入的密钥命名，浏览找到公钥文件（或粘贴公钥文件内容），然后选择**导入**。

1. Amazon IVS 会导入您的公钥并生成播放密钥资源。

### CLI 说明
<a name="private-channels-create-new-pair-cli"></a>

要使用 CLI 导入现有公有密钥，请执行以下操作：

```
aws ivs import-playback-key-pair --public-key-material "`cat public.pem`" --region <aws-region>
```

如果区域位于您的本地亚马逊云科技配置文件中，您可以忽略 `--region <aws-region>`。

以下是响应示例：

```
{
   "keyPair": {
      "arn": "arn:aws:ivs:us-west-2:693991300569:playback-key/f99cde61-c2b0-4df3-8941-ca7d38acca1a",
      "fingerprint": "98:0d:1a:a0:19:96:1e:ea:0a:0a:2c:9a:42:19:2b:e7",
      "tags": {}
   }
}
```

### API 请求
<a name="private-channels-create-api"></a>

有关使用情况信息，请参阅《IVS 低延迟直播功能 API 参考》**中的 [ImportPlaybackKeyPair](https://docs.aws.amazon.com//ivs/latest/LowLatencyAPIReference/API_ImportPlaybackKeyPair.html)。

```
POST /ImportPlaybackKeyPair HTTP/1.1
	{
	  "publicKeyMaterial": "<pem file contents>"
	}
```