ContentKey
Una ContentKey proporciona un acceso seguro a un recurso. Además de crear una entidad de ContentKey, debe usar una clave de protección para cifrar la clave de contenido que genere. Para obtener más información sobre cómo recuperar la clave de protección, vea Cifrar el recurso (opcional) y las funciones de la API REST.
En este tema encontrará un resumen de la entidad ContentKey
y una demostración de cómo ejecutar distintas operaciones con la API de REST de Media Services.
Importante
Al obtener acceso a las entidades de Media Services, debe establecer los campos de encabezado específicos y los valores en las solicitudes HTTP.
Para obtener más información, consulte Configuración del desarrollo de la API de REST de Media Services y Conexión a Media Services con la API de REST de Media Services.
Propiedades de la entidad ContentKey
Propiedad | Tipo | Descripción |
---|---|---|
Id Necesario. Media Services no establece este valor. |
Edm.String | Identificador único que define el usuario. |
Created Solo lectura. Se establece por Media Services en el momento de la creación. |
Edm.DateTime | Media Services establece este valor en el momento de la creación. |
LastModified Solo lectura. Establecido por Servicios multimedia. |
Edm.DateTime | Media Services actualiza este valor después de realizar cualquier cambio de propiedad. |
ContentKeyType Opcional. |
Edm.Int32 | Valor de enumeración que especifica el tipo de clave de contenido. Los valores válidos son: - CommonEncryption = 0 - StorageEncryption = 1 - ConfigurationEncryption = 2 - EnvelopeEncryption = 4 |
EncryptedContentKey Opcional. |
Edm.String | Clave de contenido cifrada con la clave pública del certificado X.509. La longitud máxima es 4000. |
Name Opcional. |
Edm.String | Nombre descriptivo para ContentKey. La longitud máxima es 4000. |
ProtectionKeyId Opcional. |
Edm.String | Huella digital del certificado X.509 que se usa para cifrar el almacenamiento, el cifrado común o las claves de cifrado de configuración. El valor se devuelve al invocar la función GetProtectionKeyId. La longitud máxima es 4000. |
ProtectionKeyType Opcional. |
Edm.Int32 | Valor de enumeración que especifica el tipo de clave de protección. Los valores válidos son: - X509CertificateThumbprint = 0 |
Checksum Opcional. |
Edm.String | Suma de comprobación de ContentKey. La longitud máxima es 4000. |
AuthorizationPolicyId |
Edm.String | Identificador de directiva de autorización asociado a ContentKey. |
Creación de ContentKey
Para crear ContentKeys, puede usar una solicitud HTTP POST.
Método | URI de solicitud | Versión HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys> | HTTP/1.1 |
Solicitud de ejemplo
Para obtener la versión más reciente x-ms-version:
, consulte REST de Media Services.
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=" }
Obtener dirección URL de entrega de clave
Obtiene la dirección URL de entrega clave para el método de entrega especificado de la clave de contenido. Un cliente usa la dirección URL devuelta para solicitar una clave AES o una licencia de PlayReady para reproducir el contenido protegido.
Especifique el tipo de la dirección URL que se obtendrá en el cuerpo de la solicitud HTTP. Si va a proteger el contenido con PlayReady, solicite una dirección URL de adquisición de licencias de PlayReady de Media Services, mediante 1
para : keyDeliveryType
{"keyDeliveryType":1}
. Si va a proteger el contenido con el cifrado de sobre, solicite una dirección URL de adquisición de claves especificando 2
para keyDeliveryType
: {"keyDeliveryType":2}
.
Método | URI de solicitud | Versión HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys>('ContentkeyId')/GetKeyDeliveryUrl | HTTP/1.1 |
Muestra
Puede probar el ejemplo siguiente en la pestaña Compositor de Fiddler. En el ejemplo se obtiene la dirección URL de adquisición de licencias de PlayReady.
Encabezados de solicitud:
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
Cuerpo de la solicitud:
{"keyDeliveryType":1}
Si funciona correctamente, esta operación devuelve un código de estado 200 - Correcto y la dirección URL especificada. Por ejemplo: https://account001.keydelivery.mediaservices.windows.net/PlayReady/
.
Lista de ContentKeys
Para recuperar ContentKeys, use una solicitud HTTP GET.
Método | URI de solicitud | Versión HTTP |
---|---|---|
GET | <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys> | HTTP/1.1 |
Método | URI de solicitud | Versión HTTP |
---|---|---|
GET | <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys>('contentkeyid') | HTTP/1.1 |
Método | URI de solicitud | Versión HTTP |
---|---|---|
GET | <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('assetid')/ContentKeys | HTTP/1.1 |
Solicitud de ejemplo
Para obtener la versión más reciente x-ms-version:
, consulte REST de Media Services.
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
Eliminación de ContentKey
Para eliminar ContentKeys, puede usar una solicitud DELETE HTTP.
Método | URI de solicitud | Versión HTTP |
---|---|---|
Delete | <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys>('contentkeyid') | HTTP/1.1 |
Solicitud de ejemplo
Puede probar el ejemplo siguiente en la pestaña Compositor de Fiddler.
Para obtener la versión más reciente x-ms-version:
, consulte REST de Media Services.
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 también
AccessPolicy
Recurso
AssetFile
Trabajo
JobTemplate
Localizador
MediaProcessor
Task
TaskTemplate
Cuotas y limitaciones