ContentKeyAuthorizationPolicyOption
Servizi multimediali supporta più modalità di autenticazione degli utenti che eseguono richieste di chiavi. I criteri di autorizzazione della chiave simmetrica devono essere configurati dall'utente e soddisfatti dal client (lettore) affinché la chiave possa essere distribuita al client. I criteri di autorizzazione delle chiavi simmetriche possono avere una o più restrizioni di tipo Open, Token o IP. Usare ContentKeyAuthorizationPolicyOption
per specificare le opzioni di autorizzazione. Aggiungere quindi a ContentKeyAuthorizationPolicy
le opzioni create.
Si noti che il servizio recapito chiavi memorizza nella ContentKeyAuthorizationPolicy
cache e i relativi oggetti correlati (opzioni e restrizioni dei criteri) per 15 minuti. Se si crea un ContentKeyAuthorizationPolicy
oggetto e si specifica per usare una restrizione "Token", quindi testarla e quindi aggiornare il criterio alla restrizione "Apri", il criterio richiederà circa 15 minuti prima che i criteri passano alla versione "Apri" del criterio.
Questo argomento descrive l'entità ContentKeyAuthorizationPolicyOption
e illustra il relativo uso. Per un esempio più completo, che illustra come associare ContentKeyAuthorizationPolicyOption
a ContentKeyAuthorizationPolicy
, vedere ContentKeyAuthorizationPolicy.
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à ContentKeyAuthorizationPolicyOption
Proprietà | Type | Descrizione |
---|---|---|
Id Di sola lettura. Impostata da Servizi multimediali. |
Edm.String | Identificatore univoco. |
Name |
Edm.String | Nome descrittivo del criterio di autorizzazione. |
KeyDeliveryType Obbligatorio. |
Edm. Int32 | Metodo di distribuzione della chiave simmetrica al client. KeyDeliveryType può essere uno dei seguenti: Nessuno = 0, PlayReadyLicense = 1, BaselineHttp = 2. |
KeyDeliveryConfiguration |
Edm.String | Dati XML specifici del tipo di distribuzione della chiave che definiscono la modalità di distribuzione della chiave al client. |
Restrictions Obbligatorio. |
Raccolta di Proprietà ComplexType ContentKeyAuthorizationPolicyRestriction. | Per distribuire la chiave mediante i dati di distribuzione della chiave è necessario che siano soddisfatti i requisiti definiti in ogni limitazione. |
Proprietà ContentKeyAuthorizationPolicyRestriction ComplexType
Proprietà | Type | Descrizione |
---|---|---|
Name |
Edm.String | Nome descrittivo della limitazione. |
KeyRestrictionType Obbligatorio. |
Edm. Int32 | Tipo di limitazione. KeyRestrictionType può essere uno dei seguenti: Open = 0, TokenRestricted = 1, IPRestricted = 2. |
Requirements |
Edm. string | Requisiti di limitazione. |
Creare ContentKeyAuthorizationPolicyOption
Nell'esempio seguente viene creato un metodo"KeyDeliveryType":2
di recapito delle chiavi HTTP di base MPEG (ContentKeyAuthorizationPolicyOption) con i valori seguenti: una Open
restrizione di autorizzazione () e BaselineHttp ("KeyRestrictionType":0
MPEG Baseline HTTP Key Protocol). È possibile provare l'esempio nella scheda Compositore di Fiddler.
Per ottenere l'ultima versione x-ms-version:
, vedere REST servizi multimediali.
Intestazioni della richiesta:
POST https://testrest.cloudapp.net/api/ContentKeyAuthorizationPolicyOptions HTTP/1.1
Content-Type: application/json
DataServiceVersion: 3.0;NetFx
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
Corpo della richiesta:
{
"Name":"policy",
"KeyDeliveryType":2,
"KeyDeliveryConfiguration":"",
"Restrictions":[
{
"Name":"HLS Open Authorization Policy",
"KeyRestrictionType":0,
"Requirements":null
}
]
}
Se l'esito è positivo, nel corpo della risposta viene restituito un codice di stato HTTP/1.1 201 Creato insieme a una rappresentazione dell'entità creata.
Nell'esempio seguente viene creato un metodo"KeyDeliveryType":2
di recapito della chiave HTTP (MPEG Baseline HTTP Key Protocol) con i valori seguenti: una restrizione di autorizzazione () e BaselineHttp Token
("KeyRestrictionType":1
PROTOCOLLO di chiave HTTP di base MPEG).
Per ottenere l'ultima versione x-ms-version:
, vedere REST servizi multimediali.
Intestazioni della richiesta:
POST https:/testrest.cloudapp.net/api/ContentKeyAuthorizationPolicyOptions HTTP/1.1
Content-Type: application/json
DataServiceVersion: 3.0;NetFx
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
Corpo della richiesta:
{
"Name":"Token option for HLS",
"KeyDeliveryType":2,
"KeyDeliveryConfiguration":null,
"Restrictions":[
{
"Name":"Token Authorization Policy",
"KeyRestrictionType":1,
"Requirements":"<TokenRestrictionTemplate xmlns:i=\"https://www.w3.org/2001/XMLSchema-instance\" xmlns=\"http://schemas.microsoft.com/Azure/MediaServices/KeyDelivery/TokenRestrictionTemplate/v1\"><AlternateVerificationKeys><TokenVerificationKey i:type=\"SymmetricVerificationKey\"><KeyValue>dliLr1QQJrATxNuoss2Btvk1KxcDJDHvTgu7fII5LEMGAt1p6J1YAD7I0EVd6D69nEkNUlkSDXfgaJ3cswrf8g==</KeyValue></TokenVerificationKey></AlternateVerificationKeys><Audience>urn:test</Audience><Issuer>http://testacs.com/</Issuer><PrimaryVerificationKey i:type=\"SymmetricVerificationKey\"><KeyValue>tqdCrSPGDZYJ4l3YyWR1NH7OdTvucBm7bU/ZQKPszV/hR54saMgyJK9bA9bay996NtNpcA0OruHETvy885g46A==</KeyValue></PrimaryVerificationKey><RequiredClaims><TokenClaim><ClaimType>urn:microsoft:azure:mediaservices:contentkeyidentifier</ClaimType><ClaimValue i:nil=\"true\" /></TokenClaim></RequiredClaims><TokenType>JWT</TokenType></TokenRestrictionTemplate>"
}
]
}