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