ContentKey
Un'entità ContentKey corrisponde a una chiave simmetrica e garantisce l'accesso sicuro a un asset. Oltre a creare un'entità ContentKey, è necessario usare una chiave di protezione per crittografare la chiave simmetrica generata. Per altre informazioni sul recupero della chiave di protezione, vedere Crittografare l'asset (facoltativo) e le funzioni API REST.
Questo argomento presenta informazioni generali sull'entità ContentKey
e mostra come eseguire varie operazioni con l'API REST di Servizi multimediali.
Importante
Quando si accede alle entità in Servizi multimediali, è necessario impostare valori e campi di intestazione specifici nelle richieste HTTP.
Per altre informazioni, vedere Configurazione per lo sviluppo di API REST di Servizi multimediali e connessione a Servizi multimediali con l'API REST di Servizi multimediali.
Proprietà dell'entità ContentKey
Proprietà | Type | Descrizione |
---|---|---|
Id Obbligatorio. Questo valore non è impostato da Servizi multimediali. |
Edm.String | Identificatore univoco definito dall'utente. |
Created Di sola lettura. Impostato da Servizi multimediali in fase di creazione. |
Edm.DateTime | Questo valore viene impostato da Servizi multimediali in fase di creazione. |
LastModified Di sola lettura. Impostata da Servizi multimediali. |
Edm.DateTime | Questo valore viene aggiornato da Servizi multimediali dopo che vengono apportate modifiche alle proprietà. |
ContentKeyType Facoltativa. |
Edm.Int32 | Valore di enumerazione che specifica il tipo di chiave simmetrica. I valori validi sono: - CommonEncryption = 0 - StorageEncryption = 1 - ConfigurationEncryption = 2 - BustaEncryption = 4 |
EncryptedContentKey Facoltativa. |
Edm.String | Chiave simmetrica crittografata con la chiave pubblica del certificato X.509. La lunghezza massima è 4000. |
Name Facoltativa. |
Edm.String | Nome descrittivo dell'entità ContentKey. La lunghezza massima è 4000. |
ProtectionKeyId Facoltativa. |
Edm.String | Identificazione personale del certificato X.509 usato per crittografare le chiavi di crittografia di archiviazione, di crittografia comune o di crittografia di configurazione. Questo valore viene restituito quando viene chiamata la funzione GetProtectionKeyId. La lunghezza massima è 4000. |
ProtectionKeyType Facoltativa. |
Edm.Int32 | Valore di enumerazione che specifica il tipo di chiave di protezione. I valori validi sono: - X509CertificateThumbprint = 0 |
Checksum Facoltativa. |
Edm.String | Checksum dell'entità ContentKey. La lunghezza massima è 4000. |
AuthorizationPolicyId |
Edm.String | ID dei criteri di autorizzazione associato all'entità ContentKey. |
Creare un'entità ContentKey
Le entità ContentKey possono essere create tramite una richiesta HTTP POST.
Metodo | URI richiesta | Versione HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys> | HTTP/1.1 |
Richiesta di esempio
Per ottenere l'ultima versione x-ms-version:
, vedere REST servizi multimediali.
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=" }
Ottenere l'URL di distribuzione delle chiavi
Ottiene l'URL di distribuzione delle chiavi per il metodo di distribuzione della chiave simmetrica specificato. Un client usa l'URL restituito per richiedere una chiave AES oppure una licenza PlayReady allo scopo di riprodurre contenuto protetto.
Specificare il tipo di URL da ottenere nel corpo della richiesta HTTP. Se si protegge il contenuto con PlayReady, richiedere un URL di acquisizione delle licenze PlayReady di Servizi multimediali usando 1
per keyDeliveryType
: {"keyDeliveryType":1}
. Se si protegge il contenuto con la crittografia busta, richiedere un URL di acquisizione delle chiavi specificando 2
per keyDeliveryType
: {"keyDeliveryType":2}
.
Metodo | URI richiesta | Versione HTTP |
---|---|---|
POST | <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys>('ContentkeyId')/GetKeyDeliveryUrl | HTTP/1.1 |
Esempio
È possibile provare l'esempio seguente nella scheda Compositore di Fiddler. L'esempio ottiene l'URL di acquisizione delle licenze PlayReady.
Intestazioni della richiesta:
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 della richiesta:
{"keyDeliveryType":1}
Se riesce, questa operazione restituisce un codice di stato 200 OK e l'URL specificato. Ad esempio: https://account001.keydelivery.mediaservices.windows.net/PlayReady/
.
Elencare le entità ContentKey
Le entità ContentKey possono essere recuperate tramite una richiesta HTTP GET.
Metodo | URI richiesta | Versione HTTP |
---|---|---|
GET | <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys> | HTTP/1.1 |
Metodo | URI richiesta | Versione HTTP |
---|---|---|
GET | <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys>('contentkeyid') | HTTP/1.1 |
Metodo | URI richiesta | Versione HTTP |
---|---|---|
GET | <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('assetid')/ContentKeys | HTTP/1.1 |
Richiesta di esempio
Per ottenere l'ultima versione x-ms-version:
, vedere REST servizi multimediali.
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
Eliminare un'entità ContentKey
Le entità ContentKey possono essere eliminate tramite una richiesta HTTP DELETE.
Metodo | URI richiesta | Versione HTTP |
---|---|---|
DELETE | <https:// accountname.restv2>.<location.media.azure.net/api/ContentKeys>('contentkeyid') | HTTP/1.1 |
Richiesta di esempio
È possibile provare l'esempio seguente nella scheda Compositore di Fiddler.
Per ottenere l'ultima versione x-ms-version:
, vedere REST servizi multimediali.
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
Vedere anche
AccessPolicy
Asset
AssetFile
Processo
JobTemplate
Locator
MediaProcessor
Attività
TaskTemplate
Quote e limitazioni