Compartilhar via


ContentKey

Um ContentKey fornece acesso seguro a um ativo. Além de criar uma entidade ContentKey, você deve usar também uma chave de proteção para criptografar a chave de conteúdo a ser gerada. Para obter mais informações sobre como recuperar a chave de proteção, consulte Criptografar o ativo (opcional) e funções da API REST.

Este tópico oferece uma visão geral da entidade ContentKey e também demonstra como executar várias operações com a API REST dos Serviços de Mídia.

Importante

Ao acessar entidades nos serviços de mídia, você deve definir valores e campos de cabeçalho específicos nas suas solicitações HTTP.
Para obter mais informações, consulte Instalação para desenvolvimento de API REST dos Serviços de Mídia e Conexão aos Serviços de Mídia com a API REST dos Serviços de Mídia.

Propriedades da entidade ContentKey

Propriedade Type Descrição
Id

Obrigatórios. Esse valor não é definido pelos Serviços de Mídia.
Edm.String Identificador exclusivo definido pelo usuário.
Created

Somente leitura. Definido pelos Serviços de Mídia no momento da criação.
Edm.DateTime Esse valor é definido pelos Serviços de Mídia no momento da criação.
LastModified

Somente leitura. Configurada pelos Serviços de Mídia.
Edm.DateTime Esse valor é atualizado pelos Serviços de Mídia depois que qualquer alteração de propriedade é feita.
ContentKeyType

Opcional.
Edm.Int32 Um valor de enumeração que especifica o tipo de chave de conteúdo. Os valores válidos são:

- CommonEncryption = 0
- StorageEncryption = 1
- ConfigurationEncryption = 2
- EnvelopeEncryption = 4
EncryptedContentKey

Opcional.
Edm.String Chave de conteúdo criptografada com a chave pública do certificado X.509. O comprimento máximo é 4000.
Name

Opcional.
Edm.String Nome amigável para o ContentKey. O comprimento máximo é 4000.
ProtectionKeyId

Opcional.
Edm.String Impressão digital do certificado X.509 que é usado para criptografar as chaves de armazenamento, criptografia comum ou configuração de criptografia. Este valor é retornado ao chamar a função GetProtectionKeyId. O comprimento máximo é 4000.
ProtectionKeyType

Opcional.
Edm.Int32 Um valor de enumeração que especifica o tipo de chave de proteção. Os valores válidos são:

- X509CertificateThumbprint = 0
Checksum

Opcional.
Edm.String A soma de verificação do ContentKey. O comprimento máximo é 4000.
AuthorizationPolicyId Edm.String A ID da política de autorização associada ao ContentKey.

Criar um ContentKey

Os ContentKeys podem ser criados usando uma solicitação HTTP POST.

Método URI da solicitação Versão de HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys> HTTP/1.1

Solicitação de Exemplo

Para obter o mais recente x-ms-version:, consulte REST dos Serviços de Mídia.

POST https://<accountname>.restv2.<location>.media.azure.net/api/ContentKeys HTTP/1.1  
Content-Type: application/json;odata=verbose  
Accept: application/json;odata=verbose  
DataServiceVersion: 3.0  
MaxDataServiceVersion: 3.0  
x-ms-version: 2.19  
Authorization:  Bearer <token value>  
Host: media.windows.net  
Content-Length: 572  
Expect: 100-continue  
  
{"Id" : "nb:kid:UUID:316d14d4-b603-4d90-b8db-0fede8aa48f8", "ContentKeyType" : 1, "EncryptedContentKey" : "Y4NPej7heOFa2vsd8ZEOcjjpu/qOq3RJ6GRfxa8CCwtAM83d6J2mKOeQFUmMyVXUSsBCCOdufmieTKi+hOUtNAbyNM4lY4AXI537b9GaY8oSeje0NGU8+QCOuf7jGdRac5B9uIk7WwD76RAJnqyep6U/OdvQV4RLvvZ9w7nO4bY8RHaUaLxC2u4aIRRaZtLu5rm8GKBPy87OzQVXNgnLM01I8s3Z4wJ3i7jXqkknDy4VkIyLBSQvIvUzxYHeNdMVWDmS+jPN9ScVmolUwGzH1A23td8UWFHOjTjXHLjNm5Yq+7MIOoaxeMlKPYXRFKofRY8Qh5o5tqvycSAJ9KUqfg==", "ProtectionKeyId" : "7D9BB04D9D0A4A24800CADBFEF232689E048F69C", "ProtectionKeyType" : 1, "Checksum" : "TfXtjCIlq1Y=" }  
  

Obter a URL de distribuição de chaves

Obtém a URL de distribuição de chaves para o método de entrega especificado da chave de conteúdo. Um cliente usa a URL retornada para solicitar uma chave AES ou uma licença PlayReady a fim de reproduzir o conteúdo protegido.

Especifique o tipo da URL para obter no corpo da solicitação HTTP. Se você estiver protegendo seu conteúdo com o PlayReady, solicite uma URL de aquisição de licença do PlayReady dos Serviços de Mídia, usando 1 para : keyDeliveryType{"keyDeliveryType":1}. Se você estiver protegendo seu conteúdo com a criptografia de envelope, solicite uma URL de aquisição de chave especificando 2 para keyDeliveryType: {"keyDeliveryType":2}.

Método URI da solicitação Versão de HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys>('ContentkeyId')/GetKeyDeliveryUrl HTTP/1.1

Amostra

Você pode experimentar o exemplo a seguir na guia Compositor do Fiddler. O exemplo obtém a URL de aquisição de licença do PlayReady.

Cabeçalhos de solicitação:

POST https://<accountname>.restv2.<location>.media.azure.net/api/ContentKeys('nb:kid:UUID:14e7e815-5db3-4027-9578-a55a416a3367')/GetKeyDeliveryUrl HTTP/1.1  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json  
Accept-Charset: UTF-8  
User-Agent: Microsoft ADO.NET Data Services  
Authorization:  Bearer <token value>  
x-ms-version: 2.19  
Content-Type: application/json  
Host: media.windows.net  
Content-Length: 21  
  

Corpo da solicitação:

{"keyDeliveryType":1}  

Se for bem-sucedida, essa operação retorna um código de status 200 OK e a URL especificada. Por exemplo: https://account001.keydelivery.mediaservices.windows.net/PlayReady/.

Listar ContentKeys

Os ContentKeys são recuperados usando uma solicitação HTTP GET.

Método URI da solicitação Versão de HTTP
GET <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys> HTTP/1.1
Método URI da solicitação Versão de HTTP
GET <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys>('contentkeyid') HTTP/1.1
Método URI da solicitação Versão de HTTP
GET <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('assetid')/ContentKeys HTTP/1.1

Solicitação de Exemplo

Para obter o mais recente x-ms-version:, consulte REST dos Serviços de Mídia.

GET https://<accountname>.restv2.<location>.media.azure.net/api/ContentKeys('nb:kid:UUID:58b522a5-be4e-4988-8958-ee0cdb179273') HTTP/1.1  
Content-Type: application/json;odata=verbose  
Accept: application/json;odata=verbose  
DataServiceVersion: 3.0  
MaxDataServiceVersion: 3.0  
x-ms-version: 2.19  
Authorization:  Bearer <token value>  
Host: media.windows.net  
  

Excluir um ContentKey

Os ContentKeys são excluídos por meio de uma solicitação HTTP DELETE.

Método URI da solicitação Versão de HTTP
Delete (excluir) <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys>('contentkeyid') HTTP/1.1

Solicitação de Exemplo

Você pode experimentar o exemplo a seguir na guia Compositor do Fiddler.

Para obter o mais recente x-ms-version:, consulte REST dos Serviços de Mídia.

DELETE https://<accountname>.restv2.<location>.media.azure.net/api/ContentKeys('nb:kid:UUID:58b522a5-be4e-4988-8958-ee0cdb179273') HTTP/1.1  
Content-Type: application/json;odata=verbose  
Accept: application/json;odata=verbose  
DataServiceVersion: 3.0  
MaxDataServiceVersion: 3.0  
x-ms-version: 2.19  
Authorization: Bearer <token value>  
Host: media.windows.net  
Content-Length: 0  
  

Consulte Também

AccessPolicy
Ativo
AssetFile
Trabalho
JobTemplate
Localizador
MediaProcessor
Tarefa
TaskTemplate
Cotas e limitações