设置 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
在 Amazon 中创建自定义标题 CloudFront
  1. 登录AWS Management Console并打开 CloudFront 控制台,网址为https://console.aws.amazon.com/cloudfront/v4/home

  2. 创建或编辑分配。

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

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

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

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

有关自定义标题的更多信息 CloudFront,请参阅《亚马逊 CloudFront 开发者指南》中的将客户标题转发到您的来源

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

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

要在 Secrets Manager 中存储密钥
  1. 登录到 AWS Secrets Manager 控制台:https://console.aws.amazon.com/secretsmanager/

  2. 选择存储新密钥。对于密钥类型,选择其他密钥类型

  3. 对于键/值对,输入键和值信息。

    • 在左侧的框中,输入 MediaPackageCDNIdentifier

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

  4. 对于加密密钥,您可以将默认值保留为DefaultEncryptionKey

  5. 请选择 Next(下一步)

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

  7. 请选择 Next(下一步)

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

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

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

    这将转到您的密钥列表。

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

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

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

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

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

提示

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

要使用控制台为实时内容启用 CDN 授权
  1. 打开 MediaPackage 控制台,网址为 https://console.aws.amazon.com/mediapackage/

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

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

  4. 访问控制设置中,选择使用 CDN 授权。填写以下字段:

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

要使用控制台为 VOD 内容启用 CDN 授权
  1. 打开 MediaPackage 控制台,网址为 https://console.aws.amazon.com/mediapackage/

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

  3. 创建或编辑打包组。

  4. 配置访问控制中,选择启用授权。填写以下字段:

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

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

使用 API 启用 CDN 授权 MediaPackage

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