设置 CDN 授权 - AWS Elemental MediaPackage

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

设置 CDN 授权

完成以下步骤来设置 CDN 授权。

第 1 步:配置 CDN 自定义源 HTTP 标头

在 CDN 中,配置包含标头 X-MediaPackage-CDNIdentifier 和值的自定义源 HTTP 标头。对于该值,我们建议您使用 UUID 版本 4 格式,该格式会生成包含 36 个字符的字符串。如果您未使用 UUID 版本 4 格式,则该值的长度必须为 8-128 个字符。

重要

您选择的值应为静态值。您的 CDN 和 AWS Secrets Manager 之间没有本机集成,因此该值在 CDN 和 AWS Secrets Manager 中都应该是静态的。如果在配置 CDN 和密钥后更改此值,则必须手动轮换该值。有关更多信息,请参阅 轮换 CDN 标头值

标头和值示例

X-MediaPackage-CDNIdentifier: 9ceebbe7-9607-4552-8764-876e47032660

在亚马逊中创建自定义标头CloudFront

  1. 通过以下网址登录 AWS Management Console并打开 CloudFront 控制台:https://console.aws.amazon.com/cloudfront/v3/home

  2. 创建或编辑分配。

  3. Origin Settings (源设置) 中,填写字段。您将在 Secrets Manager 中对密钥使用此相同值。

    • 对于 Header Name (标头名称),输入 X-MediaPackage-CDNIdentifier

    • 对于 Value (值),输入一个值。我们建议您使用 UUID 版本 4 格式,该格式会生成包含 36 个字符的字符串。如果您未使用 UUID 版本 4 格式,则该值的长度必须为 8-128 个字符。

  4. 完成其余字段并保存分配。

有关自定义标头的更多信息CloudFront,请参阅将客户标头转发到源中的亚马逊CloudFront开发人员指南.

第 2 步:将值作为密钥存储在中AWS Secrets Manager

将您在自定义源 HTTP 标头中使用的相同值作为密钥 存储在 AWS Secrets Manager 中。秘密必须使用相同的AWS账户和区域设置作为您的 AWS ElementalMediaPackage资源的费用。AWS ElementalMediaPackage不支持跨账户或区域共享密钥。但是,您可以在同一区域和同一账户上跨多个终端节点使用同一个密钥。

将密钥存储在 Secrets Manager 中

  1. 登录到 AWS Secrets Manager 控制台:https://console.aws.amazon.com/secretsmanager/

  2. 选择 Store a new secret (存储新密钥)。对于选择密钥类型,选择其他密钥类型

  3. 对于 Specify the key/value pairs to be stored in this secret (指定要存储在此密钥中的键/值对),请选择 Secret key/pair (密钥键/值对)

  4. 输入键和值信息。

    • 在左侧的框中,输入 MediaPackageCDNIdentifier

    • 在右侧的框中,输入您为自定义源 HTTP 标头配置的值。例如:9ceebbe7-9607-4552-8764-876e47032660

  5. 适用于选择加密密钥,您可以将默认值保留为DefaultEncryption密钥.

  6. 请选择 Next (下一步)

  7. 对于 Secret name (密钥名称),我们建议您为它添加前缀 MediaPackage/,以便您知道它是用于 MediaPackage 的密钥。例如:MediaPackage/cdn_auth_us-west-2

  8. 请选择 Next (下一步)

  9. 对于 Configure automatic rotation (配置自动轮换),保留默认的 Disable automatic rotation (禁用自动轮换) 设置。

    如果您以后需要轮换授权代码,请参阅 轮换 CDN 标头值

  10. 选择 Next (下一步),然后选择 Store (存储)

    这将转到您的密钥列表。

  11. 选择您的密钥名称以查看 Secret ARN (密钥 ARN)。ARN 具有类似于 arn:aws:secretsmanager:us-west-2:123456789012:secret:MediaPackage/cdn_auth_test-xxxxxx 的值。配置 CDN 授权时,您可以使用 Secrets ARNMediaPackage在步骤 4 中:在中启用 CDN 授权MediaPackage.

第 3 步:创建 IAM 策略和角色MediaPackage访问 Secrets Manager

创建 IAM 策略和角色以供授予MediaPackage读取 Secrets Manager 的访问。当 MediaPackage 收到来自 CDN 的播放请求时,它会验证存储的密钥值是否与自定义 HTTP 标头中的值匹配。按照允许 AWS Elemental MediaPackage 访问其他AWS服务中的步骤设置策略和角色。

第 4 步:在中启用 CDN 授权MediaPackage

您可以通过控制台、AWS CLI 或为终端节点或视频点播 (VOD) 打包组启用 CDN 授权。MediaPackageAPI。您可以将 Amazon 资源编号 (ARN) 用于您在步骤 3 中创建的 IAM 策略和角色:创建 IAM 策略和角色MediaPackage访问上面的 Secrets Manager。

提示

在同一区域和同一账户上跨多个终端节点使用相同的密钥。仅当工作流需要时,才能通过创建新密钥来降低成本。

通过控制台为实时内容启用 CDN 授权

  1. 打开MediaPackage控制台https://console.aws.amazon.com/mediapackage/.

  2. 如果您还没有通道,请创建一个通道。有关帮助信息,请参阅 创建通道

  3. 创建或编辑终端节点。

  4. Access control settings (访问控制设置) 中,选择 Use authorization (使用授权)。填写以下字段:

  5. 根据需要完成剩余字段并保存终端节点。

通过控制台为 VOD 内容启用 CDN 授权

  1. 打开MediaPackage控制台https://console.aws.amazon.com/mediapackage/.

  2. 如果您还没有 VOD 打包组,请创建一个。有关帮助信息,请参阅 创建打包组

  3. 创建或编辑打包组。

  4. Access control settings (访问控制设置) 中,选择 Use authorization (使用授权)。填写以下字段:

  5. 根据需要完成剩余字段并保存打包组。

您现在已完成 CDN 授权的设置。对此终端节点的请求必须包含您在 Secrets Manager 中保存的相同授权代码。

通过 MediaPackage API 启用 CDN 授权

有关使用 MediaPackage API 启用 CDN 授权的信息,请参阅以下 API 参考: