ContentKey
Uma Chave de Conteúdo fornece acesso seguro a um Recurso. Além de criar uma entidade ContentKey, também tem de utilizar uma chave de proteção para encriptar a chave de conteúdo que gera. Para obter mais informações sobre como obter a chave de proteção, veja Encriptar as Funções da API REST(Opcional) e do Recurso.
Este tópico fornece uma descrição geral da ContentKey
entidade e também demonstra como executar várias operações com a API REST dos Serviços de Multimédia.
Importante
Ao aceder a entidades nos Serviços de Multimédia, tem de definir campos e valores de cabeçalho específicos nos seus pedidos HTTP.
Para obter mais informações, veja Setup for Media Services REST API Development and Connecting to Media Services with the Media Services REST API ( Configurar o Desenvolvimento da API REST dos Serviços de Multimédia e Ligar aos Serviços de Multimédia com a API REST dos Serviços de Multimédia).
Propriedades da Entidade ContentKey
Propriedade | Tipo | Description |
---|---|---|
Id Obrigatório. Este valor não é definido pelos Serviços de Multimédia. |
Edm.String | Identificador exclusivo definido pelo utilizador. |
Created Só de leitura. Definido pelos Serviços de Multimédia no momento da criação. |
Edm.DateTime | Este valor é definido pelos Serviços de Multimédia no momento da criação. |
LastModified Só de leitura. Definido pelos Serviços de Multimédia. |
Edm.DateTime | Este valor é atualizado pelos Serviços de Multimédia depois de serem efetuadas alterações de propriedade. |
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 encriptada com a chave pública do certificado X.509. O comprimento máximo é 4000. |
Name Opcional. |
Edm.String | Nome amigável da sua Chave de Conteúdo. O comprimento máximo é 4000. |
ProtectionKeyId Opcional. |
Edm.String | Thumbprint do certificado X.509 que é utilizado para encriptar o armazenamento, encriptação comum ou chaves de encriptação de configuração. Este valor é-lhe devolvido 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 da Chave de Conteúdo. O comprimento máximo é 4000. |
AuthorizationPolicyId |
Edm.String | O ID da política de autorização associado à Chave de Conteúdo. |
Criar uma Chave de Conteúdo
Os ContentKeys podem ser criados com um pedido POST HTTP.
Método | URI do pedido | Versão HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys> | HTTP/1.1 |
Pedido de Amostra
Para obter as versões mais recentes x-ms-version:
, veja Serviços de Multimédia REST.
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 URL de Entrega de Chaves
Obtém o URL de entrega da chave para o método de entrega especificado da chave de conteúdo. Um cliente utiliza o URL devolvido para pedir uma chave AES ou uma licença PlayReady para reproduzir o conteúdo protegido.
Especifique o tipo de URL a obter no corpo do pedido HTTP. Se estiver a proteger os seus conteúdos com o PlayReady, peça um URL de aquisição de licença playReady dos Serviços de Multimédia, utilizando 1
para : keyDeliveryType
{"keyDeliveryType":1}
. Se estiver a proteger o seu conteúdo com a encriptação de envelope, peça um URL de aquisição de chave ao especificar 2
para keyDeliveryType
: {"keyDeliveryType":2}
.
Método | URI do pedido | Versão HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys>('ContentkeyId')/GetKeyDeliveryUrl | HTTP/1.1 |
Sample
Pode experimentar o seguinte exemplo no separador Compositor do Fiddler. O exemplo obtém o URL de aquisição da licença PlayReady.
Cabeçalhos de pedido:
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 do pedido:
{"keyDeliveryType":1}
Se for bem-sucedida, esta operação devolve um código de estado 200 OK e o URL especificado. Por exemplo: https://account001.keydelivery.mediaservices.windows.net/PlayReady/
.
Listar Chaves de Conteúdo
Os ContentKeys são obtidos com um pedido GET HTTP.
Método | URI do pedido | Versão HTTP |
---|---|---|
GET | <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys> | HTTP/1.1 |
Método | URI do pedido | Versão HTTP |
---|---|---|
GET | <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys>('contentkeyid') | HTTP/1.1 |
Método | URI do pedido | Versão HTTP |
---|---|---|
GET | <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('assetid')/ContentKeys | HTTP/1.1 |
Pedido de Amostra
Para obter a versão mais recente x-ms-version:
, consulte REST dos Serviços de Multimé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
Eliminar uma Chave de Conteúdo
As ContentKeys são eliminadas através de um pedido HTTP DELETE.
Método | URI do pedido | Versão HTTP |
---|---|---|
DELETE | <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys>('contentkeyid') | HTTP/1.1 |
Pedido de Amostra
Pode experimentar o seguinte exemplo no separador Compositor do Fiddler.
Para obter a versão mais recente x-ms-version:
, consulte REST dos Serviços de Multimé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
Recurso
AssetFile
Tarefa
JobTemplate
Localizador
MediaProcessor
Tarefa
TaskTemplate
Quotas e Limitações