数字权限管理 - Amazon Elastic Transcoder

通过以下方式节省成本并获得更多功能 AWS Elemental MediaConvert

MediaConvert 是一项较新的基于文件的视频转码服务,它提供了一套全面的高级转码功能,按需费率起价为每分钟 0.0075 美元。阅读更多

已经在使用 Amazon Elastic Transcoder? 迁移到很简单 MediaConvert。有关更多信息,请参阅本概述,其中包含有关迁移过程的重要信息以及指向其他资源的链接。

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

数字权限管理

您可以使用数字权限管理 (DRM) 来限制对您的播放列表的访问,这样只有已验证身份的用户才能查看您的内容。

DRM 的工作方式是仅限已使用第三方 DRM 许可服务器进行身份验证的用户播放文件。DRM 通过将 DRM 标头包含或打包在文件的段中来实现此目的。DRM 打包包含与许可服务器联系所需的信息,以及播放文件所需的所有加密信息。文件打包后会发送到内容分发网络,该网络可以是诸如 Amazon S3 和 CloudFront 这样的服务,也可以是诸如 Akamai 这样的非 AWS 服务。文件分发后,在播放之前需要联系许可服务器获得许可。通过指定一整套内容保护协议,DRM 的效果超过标准加密。下图显示了 DRM 工作原理的基本流程。


			DRM 流程图。

Elastic Transcoder 可为您处理 DRM 打包(此过程的最后三个步骤):

  1. 内容提供商(您)利用内容密钥 ID 调用 DRM 许可证提供程序,以生成内容密钥。

  2. 许可证提供程序使用密钥 ID 生成内容密钥,并将它和获取许可证的 URL 返回给内容提供商。

  3. 内容提供商调用 AWS KMS 来加密内容密钥,AWS KMS 返回经过加密的内容密钥。

  4. 内容提供商利用加密的内容密钥、密钥 ID 和获取许可证的网址调用数据包服务器 (Elastic Transcoder)。

  5. 数据包服务器抓取要保护的文件,并将其与 DRM 信息捆绑在一起。

  6. 数据包服务器将 DRM 保护的文件发送给分发服务器,由其分发文件。

PlayReady DRM

Elastic Transcoder 支持使用 PlayReady DRM 进行 DRM。此功能可保护您的媒体内容,并确保只有授权用户才可以查看您的媒体文件。受 PlayReady 保护的文件的身份验证流程和播放流取决于您的具体播放器和许可服务器设置。

数字权限管理密钥

要将 DRM 和 Elastic Transcoder 结合使用,您需要两种类型的密钥和一个密钥 ID:

  • 内容密钥——来自您的 DRM 许可服务器的密钥,与您的 Elastic Transcoder 任务相关联

  • 密钥 ID——来自 DRM 许可服务器的密钥的 ID,许可服务器使用它来识别解密文件所需的内容密钥

  • AWS KMS 密钥——与您的 Elastic Transcoder 管道关联的 AWS KMS 密钥

您必须拥有内容密钥才能使用 DRM。内容密钥用于加密您的媒体文件。对于相同内容的所有变体和区段,使用相同内容密钥进行加密。Elastic Transcoder 不会为您生成此密钥;您必须从 DRM 许可服务器获取此密钥。您还必须拥有该密钥的 ID,以便 Elastic Transcoder 将其打包在受保护的播放列表中,从而使播放器能够从许可服务器检索内容密钥。

您必须拥有 AWS KMS 密钥才能使用 DRM。AWS KMS 密钥用于在通过 Internet 发送内容密钥之前对其进行加密。我们建议您创建一个 AWS KMS 密钥用于您的所有转码任务。有关创建和设置 AWS KMS 密钥的更多信息,请参阅 AWS KMS 与 Elastic Transcoder 搭配使用

流式处理受 DRM 保护的内容

要提供 DRM 内容,您必须拥有以下项:

  • 用于生成和存储您的 DRM 内容密钥的 DRM 许可证提供程序。

  • 用于存储您的加密媒体文件的位置。建议您将文件存储在 Amazon S3 中。

  • (可选) 一个用于文件流式传输的内容分发网络 (CDN)。有关 CDN 的更多信息,请参阅《Amazon CloudFront 开发人员指南》https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/programming-encryption.html中的 CloudFront 入门

  • 能够对您的用户进行身份验证和授权的应用程序。您可以使用 Amazon EC2 运行此应用程序。有关更多信息,请参阅《Amazon EC2 用户指南(适用于 Windows 实例)》(适用于 Windows 用户)中的使用 Amazon EC2 进行设置或者《Amazon EC2 用户指南(适用于 Linux 实例)》(适用于 Linux 用户)中的使用 Amazon EC2 进行设置

  • 能够播放受 DRM 保护的文件和加密文件的播放器。

    注意

    要使用 HLS 和 PlayReady DRM,您必须拥有自定义播放器。

创建受 DRM 保护的流式传输内容

要准备用于 DRM 的文件,您必须将 AWS KMS 与新管道或现有管道相关联。

要使用您指定的 AWS KMS 设置管道,请参阅 AWS KMS 与 Elastic Transcoder 搭配使用

下面的步骤介绍如何使用 Elastic Transcoder 控制台加密用于 DRM 的文件:

将 DRM 用于您的文件
  1. 通过以下网址打开 Elastic Transcoder 控制台:https://console.aws.amazon.com/elastictranscoder/

  2. 在导航窗格中单击任务,然后创建一个新任务。有关更多信息,请参见 在 Elastic Transcoder 中创建任务

  3. 加密参数设置为 None

  4. 对于播放列表,单击添加播放列表并选择 SmoothHLSv3 作为您的播放列表类型。

  5. 对于 PlayReady DRM,选择 Enter Information

    a. 对于许可证获取 URL,键入 DRM 服务器的绝对路径。

    b. 对于密钥 ID,键入您的内容密钥 ID。

    c. 对于加密密钥,键入采用 base64 编码的内容密钥。

    d. 对于加密密钥 MD5,键入内容密钥的 MD5 哈希值(采用 base64 编码)。

    e. 对于加密初始化向量,键入采用 base64 编码的初始化向量。

注意

Elastic Transcoder 将内容密钥作为任务对象的一部分返回,但不会存储内容密钥。您负责在 DRM 服务器中存储内容密钥。