Partager via


ContentKeyAuthorizationPolicyOption

Media Services prend en charge plusieurs méthodes d’authentification des utilisateurs effectuant des demandes de clé. La stratégie d'autorisation de la clé de contenu doit être configurée par vous et respectée par le client (lecteur) afin que la clé soit remise au client. La stratégie d’autorisation des clés de contenu peut avoir une ou plusieurs restrictions d’autorisations : ouvert, restriction par jeton ou restriction IP. Vous utilisez ContentKeyAuthorizationPolicyOption pour spécifier les options d'autorisation. Vous ajoutez ensuite les options créées à ContentKeyAuthorizationPolicy.

Notez que le service de remise de clés met en ContentKeyAuthorizationPolicy cache et ses objets associés (options de stratégie et restrictions) pendant 15 minutes. Si vous créez un ContentKeyAuthorizationPolicy et spécifiez d’utiliser une restriction « Jeton », puis testez-la, puis mettez à jour la stratégie vers la restriction « Ouvrir », il faudra environ 15 minutes avant que la stratégie bascule vers la version « Open » de la stratégie.

Cette rubrique décrit ContentKeyAuthorizationPolicyOption et montre comment utiliser cette entité. Pour obtenir un exemple plus complet, qui montre comment associer ContentKeyAuthorizationPolicyOptionContentKeyAuthorizationPolicyà , consultez ContentKeyAuthorizationPolicy.

Important

Lors de l’accès aux entités dans Media Services, vous devez définir les valeurs et les champs d’en-tête spécifiques dans vos requêtes HTTP.
Pour plus d’informations, consultez Configuration du développement de l’API REST Media Services et Connexion à Media Services avec l’API REST Media Services.

Propriétés de l'entité ContentKeyAuthorizationPolicyOption

Propriété Type Description
Id

Lecture seule. Défini par Media Services.
Edm.String Identificateur unique.
Name Edm.String Nom convivial de la stratégie d'autorisation.
KeyDeliveryType

Obligatoire.
Edm. Int32 Méthode de diffusion de la clé de contenu au client.

KeyDeliveryType peut être l’un des éléments suivants : None = 0, PlayReadyLicense = 1, BaselineHttp = 2).
KeyDeliveryConfiguration Edm.String Données XML spécifiques au type de diffusion de clé qui définit comment la clé est diffusée au client.
Restrictions

Obligatoire.
Collection de propriétés ComplexType ContentKeyAuthorizationPolicyRestriction. Les spécifications requises définies dans chaque restriction doivent être satisfaites pour pouvoir diffuser la clé en utilisant les données de diffusion de clé.

Propriétés du type complexe ContentKeyAuthorizationPolicyRestriction

Propriété Type Description
Name Edm.String Nom convivial de la restriction.
KeyRestrictionType

Obligatoire.
Edm. Int32 Type de la restriction.

KeyRestrictionType peut être l’un des éléments suivants : Open = 0, TokenRestricted = 1, IPRestricted = 2.
Requirements Edm. String Spécifications requises de la restriction.

Créer une ContentKeyAuthorizationPolicyOption

L’exemple suivant crée une contentKeyAuthorizationPolicyOption avec les valeurs suivantes définies : une restriction d’autorisation Open ("KeyRestrictionType":0) et une méthode de remise de clé BaselineHttp (protocole de clé HTTP de référence MPEG) ("KeyDeliveryType":2). Vous pouvez essayer l’exemple sous l’onglet Compositeur de Fiddler.

Pour obtenir la dernière version x-ms-version:, consultez REST Media Services.

En-têtes de requête :

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  

Corps de la requête :

  
{    
   "Name":"policy",  
   "KeyDeliveryType":2,  
   "KeyDeliveryConfiguration":"",  
   "Restrictions":[    
      {    
         "Name":"HLS Open Authorization Policy",  
         "KeyRestrictionType":0,  
         "Requirements":null  
      }  
   ]  
}  

En cas de succès, un code d'état HTTP/1.1 201 Créé est retourné avec une représentation de l'entité créée dans le corps de la réponse.

L’exemple suivant crée une contentKeyAuthorizationPolicyOption avec les valeurs suivantes définies : une restriction d’autorisation ("KeyRestrictionType":1) et une Token méthode de remise de clé BaselineHttp (protocole de clé HTTP de référence MPEG) ("KeyDeliveryType":2).

Pour obtenir la dernière version x-ms-version:, consultez REST Media Services.

En-têtes de requête :

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  
  

Corps de la requête :

{    
   "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>"  
      }  
   ]  
}