Visão geral de proteção do conteúdoContent protection overview

Observação

Não estão sendo adicionados novos recursos ou funcionalidades aos Serviços de Mídia v2.No new features or functionality are being added to Media Services v2.
Confira a versão mais recente, Serviços de Mídia v3.Check out the latest version, Media Services v3. Consulte também diretrizes de migração da v2 para v3Also, see migration guidance from v2 to v3

É possível usar os Serviços de Mídia do Azure para proteger sua mídia desde o momento que ela sai do seu computador até o armazenamento, processamento e entrega.You can use Azure Media Services to secure your media from the time it leaves your computer through storage, processing, and delivery. Com os Serviços de Mídia, é possível entregar o conteúdo ao vivo e sob demanda criptografado dinamicamente com a criptografia AES (AES-128) ou qualquer um dos três principais sistemas DRM (gerenciamento de direitos digitais): Microsoft PlayReady, Google Widevine e Apple FairPlay.With Media Services, you can deliver your live and on-demand content encrypted dynamically with Advanced Encryption Standard (AES-128) or any of the three major digital rights management (DRM) systems: Microsoft PlayReady, Google Widevine, and Apple FairPlay. Os serviços de mídia também fornecem um serviço de distribuição de chaves AES e licenças DRM (PlayReady, Widevine e FairPlay) para os clientes autorizados.Media Services also provides a service for delivering AES keys and DRM (PlayReady, Widevine, and FairPlay) licenses to authorized clients.

A seguinte imagem ilustra o fluxo de trabalho de proteção de conteúdo dos Serviços de Mídia:The following image illustrates the Media Services content protection workflow:

Proteger com o PlayReady

Este artigo explica conceitos e terminologia relevantes para a compreensão da proteção de conteúdo com os Serviços de Mídia.This article explains concepts and terminology relevant to understanding content protection with Media Services. O artigo também fornece links para artigos que descrevem como proteger o conteúdo.The article also provides links to articles that discuss how to protect content.

Criptografia dinâmicaDynamic encryption

É possível usar os Serviços de Mídia para entregar conteúdo criptografado dinamicamente com chave não criptografada AES ou criptografia DRM usando o PlayReady, o Widevine ou o FairPlay.You can use Media Services to deliver your content encrypted dynamically with AES clear key or DRM encryption by using PlayReady, Widevine, or FairPlay. No momento, você pode criptografar os formatos HLS (HTTP Live Streaming), MPEG DASH e Smooth Streaming.Currently, you can encrypt the HTTP Live Streaming (HLS), MPEG DASH, and Smooth Streaming formats. Não há suporte para criptografia em downloads progressivos.Encryption on progressive downloads is not supported. Cada método de criptografia fornece suporte aos seguintes protocolos de streaming:Each encryption method supports the following streaming protocols:

  • AES: MPEG-DASH, Smooth Streaming e HLSAES: MPEG-DASH, Smooth Streaming, and HLS
  • PlayReady: MPEG-DASH, Smooth Streaming e HLSPlayReady: MPEG-DASH, Smooth Streaming, and HLS
  • Widevine: MPEG-DASHWidevine: MPEG-DASH
  • FairPlay: HLSFairPlay: HLS

Para criptografar um ativo, é necessário associar uma chave de conteúdo de criptografia ao seu ativo e também configurar uma política de autorização para a chave.To encrypt an asset, you need to associate an encryption content key with your asset and also configure an authorization policy for the key. As chaves de conteúdo podem ser especificadas ou geradas automaticamente pelos Serviços de Mídia.Content keys can be specified or automatically generated by Media Services.

Você também precisa configurar a política de entrega do ativo.You also need to configure the asset's delivery policy. Se deseja fazer streaming de um ativo criptografado de armazenamento, certifique-se de especificar como deseja entregá-lo, configurando a política de entrega do ativo.If you want to stream a storage-encrypted asset, make sure to specify how you want to deliver it by configuring the asset delivery policy.

Quando um fluxo é solicitado por um player, os Serviços de Mídia usam a chave especificada para criptografar dinamicamente o conteúdo usando a chave não criptografada AES ou a criptografia DRM.When a stream is requested by a player, Media Services uses the specified key to dynamically encrypt your content by using AES clear key or DRM encryption. Para descriptografar o streaming, o player solicita a chave do serviço de entrega de chaves dos Serviços de Mídia.To decrypt the stream, the player requests the key from Media Services key delivery service. Para decidir se o usuário está autorizado para obter a chave ou não, o serviço avalia as políticas de autorização que você especificou para a chave.To decide whether or not the user is authorized to get the key, the service evaluates the authorization policies that you specified for the key.

Chave AES-128 não criptografada vs. DRMAES-128 clear key vs. DRM

Geralmente, os clientes se perguntam se devem utilizar criptografia AES ou um sistema DRM.Customers often wonder whether they should use AES encryption or a DRM system. A principal diferença entre os dois sistemas é que, com a criptografia AES, a chave de conteúdo é transmitida ao cliente em um formato não criptografado.The primary difference between the two systems is that with AES encryption the content key is transmitted to the client in an unencrypted format ("in the clear"). Como resultado, a chave usada para criptografar o conteúdo pode ser exibida em um rastreamento de rede no cliente em texto sem formatação.As a result, the key used to encrypt the content can be viewed in a network trace on the client in plain text. A criptografia de chave AES-128 não criptografada é adequada para casos de uso em que o visualizador é uma parte confiável (por exemplo, criptografar vídeos corporativos distribuídos em uma empresa para serem visualizados pelos funcionários).AES-128 clear key encryption is suitable for use cases where the viewer is a trusted party (for example, encrypting corporate videos distributed within a company to be viewed by employees).

PlayReady, Widevine e FairPlay fornecem um maior nível de criptografia em comparação com a criptografia de chave não criptografada AES-128.PlayReady, Widevine, and FairPlay all provide a higher level of encryption compared to AES-128 clear key encryption. A chave de conteúdo é transmitida em um formato criptografado.The content key is transmitted in an encrypted format. Além disso, a descriptografia é identificada em um ambiente seguro no nível do sistema operacional, no qual é mais difícil para um usuário mal-intencionado atacar.Additionally, decryption is handled in a secure environment at the operating system level, where it's more difficult for a malicious user to attack. O DRM é recomendado para casos de uso em que o visualizador pode não ser uma parte confiável e você exige o mais alto nível de segurança.DRM is recommended for use cases where the viewer might not be a trusted party and you require the highest level of security.

Criptografia do armazenamentoStorage encryption

Você pode usar a criptografia de armazenamento para criptografar o conteúdo não criptografado localmente usando criptografia AES de 256 bits.You can use storage encryption to encrypt your clear content locally by using AES 256-bit encryption. Você pode carregá-lo no Armazenamento do Azure, no qual ele está armazenado criptografado e em repouso.You then can upload it to Azure Storage, where it's stored encrypted at rest. Ativos protegidos pela criptografia de armazenamento são descriptografados automaticamente e posicionados em um sistema de arquivos criptografados antes da codificação.Assets protected with storage encryption are automatically unencrypted and placed in an encrypted file system prior to encoding. Os ativos são opcionalmente criptografados novamente antes de carregar novamente como um novo ativo de saída.The assets are optionally re-encrypted prior to uploading back as a new output asset. O caso de uso principal para criptografia de armazenamento é quando você deseja proteger seus arquivos de mídia de entrada com criptografia forte de alta qualidade em repouso no disco.The primary use case for storage encryption is when you want to secure your high-quality input media files with strong encryption at rest on disk.

Para entregar um ativo de armazenamento criptografado, você deve configurar a política de entrega do ativo para que os Serviços de Mídia saibam como você deseja entregar seu conteúdo.To deliver a storage-encrypted asset, you must configure the asset's delivery policy so that Media Services knows how you want to deliver your content. Antes que seu ativo possa ser transmitido por streaming, o servidor de streaming descriptografa e faz streaming do conteúdo utilizando a política de entrega especificada (por exemplo, AES, criptografia comum ou sem criptografia).Before your asset can be streamed, the streaming server decrypts and streams your content by using the specified delivery policy (for example, AES, common encryption, or no encryption).

Tipos de criptografiaTypes of encryption

O PlayReady e Widevine utilizam criptografia comum (modo AES CTR).PlayReady and Widevine utilize common encryption (AES CTR mode). O FairPlay utiliza a criptografia de modo AES CBC.FairPlay utilizes AES CBC-mode encryption. A criptografia de chave não criptografada AES-128 utiliza criptografia de envelope.AES-128 clear key encryption utilizes envelope encryption.

Serviço de entrega de licenças e chavesLicenses and keys delivery service

Os Serviços de Mídia fornecem um serviço de entrega de chaves para entrega de licenças DRM (PlayReady, Widevine, FairPlay) e chaves AES para clientes autorizados.Media Services provides a key delivery service for delivering DRM (PlayReady, Widevine, FairPlay) licenses and AES keys to authorized clients. Você pode usar o Portal do Azure, a API REST ou o SDK dos Serviços de Mídia para .NET para configurar políticas de autenticação e autorização para suas licenças e chaves.You can use the Azure portal, the REST API, or the Media Services SDK for .NET to configure authorization and authentication policies for your licenses and keys.

Controlar o acesso de conteúdoControl content access

É possível controlar quem tem acesso ao seu conteúdo, configurando a política de autorização de chave de conteúdo.You can control who has access to your content by configuring the content key authorization policy. A política de autorização de chave de conteúdo fornece suporte para restrição de token ou aberta.The content key authorization policy supports either open or token restriction.

Autorização abertaOpen authorization

Com uma política de autorização aberta, a chave de conteúdo é enviada para qualquer cliente (sem restrição).With an open authorization policy, the content key is sent to any client (no restriction).

Autorização de tokenToken authorization

Com uma política de autorização restrita por token, a chave de conteúdo somente será enviada a um cliente que tenha um JWT (Token Web JSON) ou SWT (Token Web Simples) válido na solicitação de licença/chave.With a token-restricted authorization policy, the content key is sent only to a client that presents a valid JSON Web Token (JWT) or simple web token (SWT) in the key/license request. Esse token deve ser emitido por um STS (serviço de token de segurança).This token must be issued by a security token service (STS). É possível usar o Azure Active Directory como um STS ou implantar um STS personalizado.You can use Azure Active Directory as an STS or deploy a custom STS. O STS deve ser configurado para criar um token assinado com as a chave especificada e declarações de emissão que você especificou na configuração de restrição do token.The STS must be configured to create a token signed with the specified key and issue claims that you specified in the token restriction configuration. O serviço de entrega de chaves dos Serviços de Mídia retornará a licença/chave solicitada ao cliente se o token for válido e as declarações no token corresponderem àquelas configuradas para a licença/chave.The Media Services key delivery service returns the requested key/license to the client if the token is valid and the claims in the token match those configured for the key/license.

Ao configurar a política restrita do token, você deve especificar os parâmetros de chave de verificação primária, emissor e público.When you configure the token restricted policy, you must specify the primary verification key, issuer, and audience parameters. A chave de verificação primária contém a chave com a qual o token foi assinado.The primary verification key contains the key that the token was signed with. O emissor é o serviço de token seguro que emite o token.The issuer is the secure token service that issues the token. O público, às vezes chamado de escopo, descreve a intenção do token ou do recurso ao qual o token autoriza o acesso.The audience, sometimes called scope, describes the intent of the token or the resource the token authorizes access to. O serviço de distribuição de chaves dos serviços de mídia valida que esses valores no token correspondem aos valores no modelo.The Media Services key delivery service validates that these values in the token match the values in the template.

URLs de streamingStreaming URLs

Se o ativo foi criptografado com mais de um DRM, use uma marcação de criptografia na URL de streaming: (formato='m3u8-aapl' criptografia='xxx').If your asset was encrypted with more than one DRM, use an encryption tag in the streaming URL: (format='m3u8-aapl', encryption='xxx').

As seguintes considerações se aplicam:The following considerations apply:

  • Não é possível especificar mais do que um tipo de criptografia.No more than one encryption type can be specified.
  • O tipo de criptografia não precisa ser especificado na URL se apenas uma criptografia foi aplicada no ativo.Encryption type doesn't have to be specified in the URL if only one encryption was applied to the asset.
  • O tipo de criptografia diferencia as letras maiúsculas de minúsculas.Encryption type is case insensitive.
  • Os seguintes tipos de criptografia podem ser especificados:The following encryption types can be specified:
    • cenc: Para PlayReady ou Widevine (criptografia comum)cenc: For PlayReady or Widevine (common encryption)
    • cbcs-aapl: Para FairPlay (criptografia AES CBC)cbcs-aapl: For FairPlay (AES CBC encryption)
    • cbc: Para criptografia de envelope AEScbc: For AES envelope encryption

Próximas etapasNext steps

Os artigos a seguir descrevem as próximas etapas para ajudar na introdução à proteção de conteúdo:The following articles describe next steps to help you get started with content protection: