Freigeben über


ContentKeyAuthorizationPolicy

Media Services unterstützt mehrere Möglichkeiten zur Authentifizierung von Benutzern, die Schlüssel anfordern. Die Inhaltsschlüssel-Authentifizierungsrichtlinie muss von Ihnen konfiguriert und vom Client (Player) erfüllt werden, damit der Schlüssel an den Client übermittelt wird. Die Autorisierungsrichtlinie für Inhaltsschlüssel kann eine oder mehrere Autorisierungseinschränkungen aufweisen: offen, Tokeneinschränkung oder IP-Einschränkung. Sie verwenden ContentKeyAuthorizationPolicyOption , um die Autorisierungsoptionen anzugeben. Dann fügen Sie die erstellten Optionen zu ContentKeyAuthorizationPolicy hinzu.

Wenn Sie planen, mehrere Inhaltsschlüssel zu verwenden, die die Beispielrichtlinienkonfiguration erfordern, wird dringend empfohlen, eine Autorisierungsrichtlinie zu erstellen und diese dann mit mehreren Inhaltsschlüsseln wiederzuverwenden.

Beachten Sie, dass der Schlüsselbereitstellungsdienst ContentKeyAuthorizationPolicy und die zugehörigen Objekte (Richtlinienoptionen und -einschränkungen) 15 Minuten lang zwischenspeichert. Wenn Sie eine ContentKeyAuthorizationPolicy erstellen und die Verwendung einer Einschränkung vom Typ "Token" angeben, die Richtlinie dann testen und anschließend die Richtlinie auf die Einschränkung "Offen" aktualisieren, dauert es ungefähr 15 Minuten, bis die Richtlinie in die Version "Offen" der Richtlinie wechselt.

In diesem Thema wird ContentKeyAuthorizationPolicy beschrieben und gezeigt, wie Sie diese Entität verwenden.

Wichtig

Wenn Sie in Media Services auf Entitäten zugreifen, müssen Sie bestimmte Headerfelder und Werte in Ihren HTTP-Anforderungen festlegen.
Weitere Informationen finden Sie unter Einrichten der Media Services-REST-API-Entwicklung und Herstellen einer Verbindung mit Media Services mit der Media Services-REST-API.

Eigenschaften der Entität "ContentKeyAuthorizationPolicy"

Eigenschaft type BESCHREIBUNG
Id

Schreibgeschützt. Wird von Media Services festgelegt.
Edm.String Eindeutiger Bezeichner.
Name Edm.String Anzeigename der Autorisierungsrichtlinie für den Inhaltsschlüssel.
Options Eine Auflistung von ContentKeyAuthorizationPolicyOptions. Eine Liste unterschiedlicher Möglichkeiten, wie ein Client für den Zugriff auf den Inhaltsschlüssel autorisiert werden kann.

Erstellen von ContentKeyAuthorizationPolicy

Im folgende Beispiel wird eine "ContentKeyAuthorizationPolicy" erstellt. Sie können das Beispiel auf der Registerkarte "Fiddler's Composer" ausprobieren.

Informationen zum Aktuellen x-ms-version:finden Sie unter Media Services REST.

Anforderungsheader:

POST https://testrest.cloudapp.net/api/ContentKeyAuthorizationPolicies  
  
Content-Type: application/json  
DataServiceVersion: 1.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  
  

Anforderungstext:

{"Name" : "Authorization Policy" }   

Bei Erfolg wird der Statuscode HTTP/1.1 201 Created mit einer Darstellung der erstellten Entität im Antworttext zurückgegeben.

Erstellen von ContentKeyAuthorizationPolicyOption

Das folgende Beispiel erstellt eine "ContentKeyAuthorizationPolicyOption" mit den folgenden Werten: eine Open-Autorisierungseinschränkung ("KeyRestrictionType":0) und die BaselineHttp-Schlüsselbereitstellungsmethode (MPEG-Baseline-HTTP-Schlüsselprotokoll ("KeyDeliveryType":2). Sie können das Beispiel auf der Registerkarte "Fiddler's Composer" ausprobieren.

Informationen zum Aktuellen x-ms-version:finden Sie unter Media Services REST.

Anforderungsheader:

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  

Anforderungstext:

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

Bei Erfolg wird der Statuscode HTTP/1.1 201 Created mit einer Darstellung der erstellten Entität im Antworttext zurückgegeben.

Das folgende Beispiel erstellt eine "ContentKeyAuthorizationPolicyOption" mit den folgenden Werten: eine Token-Autorisierungseinschränkung ("KeyRestrictionType":1) und die BaselineHttp-Schlüsselbereitstellungsmethode (MPEG-Baseline-HTTP-Schlüsselprotokoll ("KeyDeliveryType":2).

Informationen zum Aktuellen x-ms-version:finden Sie unter Media Services REST.

Anforderungsheader:

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  
  

Anforderungstext:

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

Zuordnen von Optionen mit "ContentKeyAuthorizationPolicy"

Das folgende Beispiel ordnet "ContentKeyAuthorizationPolicy" zu "ContentKeyAuthorizationPolicyOption" zu. Sie können das Beispiel auf der Registerkarte "Fiddler's Composer" ausprobieren.

Informationen zum Aktuellen x-ms-version:finden Sie unter Media Services REST.

Anforderungsheader:

POST https://testrest.cloudapp.net/api/ContentKeyAuthorizationPolicies('nb%3Ackpid%3AUUID%3Ac0a7c7cb-09c2-4306-86f5-9e9dc718cd90')/$links/Options  
  
DataServiceVersion: 1.0;NetFx  
MaxDataServiceVersion: 3.0;NetFx  
Accept: application/json  
Accept-Charset: UTF-8  
Content-Type: application/json  
User-Agent: Microsoft ADO.NET Data Services  
Authorization: Bearer <token value>  
x-ms-version: 2.19  
  

Anforderungstext:

{ "uri":"https://wamsbayclus001rest-hs.cloudapp.net/api/ContentKeyAuthorizationPolicyOptions('nb%3Ackpoid%3AUUID%3A288f8084-e93b-4d04-90c0-a7af9145b7ae')" }  
  

Bei Erfolg wird der Statuscode HTTP/1.1 200 OK mit einer Darstellung der erstellten Entität im Antworttext zurückgegeben.