ContentKeyAuthorizationPolicyOption

Usługa Media Services obsługuje wiele sposobów uwierzytelniania użytkowników, którzy tworzą żądania klucza. Zasady autoryzacji klucza zawartości muszą zostać skonfigurowane przez użytkownika i muszą być spełnione przez klienta (odtwarzacz), aby klucz zawartości został dostarczony do klienta. Zasady autoryzacji klucza zawartości mogą mieć co najmniej jedno ograniczenie autoryzacji: otwarte, ograniczenie tokenu lub ograniczenie adresu IP. ContentKeyAuthorizationPolicyOption Służy do określania opcji autoryzacji. Następnie dodaj utworzone opcje do elementu ContentKeyAuthorizationPolicy.

Należy pamiętać, że usługa dostarczania kluczy buforuje ContentKeyAuthorizationPolicy i powiązane z nią obiekty (opcje zasad i ograniczenia) przez 15 minut. Jeśli utworzysz ContentKeyAuthorizationPolicy i określisz użycie ograniczenia "Token", przetestujesz je, a następnie zaktualizujesz zasady do ograniczenia "Otwórz", zanim zasady przełączą się do wersji "Otwórz" zasad, potrwa około 15 minut.

W tym temacie opisano ContentKeyAuthorizationPolicyOption i pokazano, jak używać tej jednostki. Aby uzyskać bardziej kompletny przykład, który pokazuje, jak skojarzyć ContentKeyAuthorizationPolicyOption z elementem ContentKeyAuthorizationPolicy, zobacz ContentKeyAuthorizationPolicy.

Ważne

Podczas uzyskiwania dostępu do jednostek w usłudze Media Services należy ustawić określone pola nagłówka i wartości w żądaniach HTTP.
Aby uzyskać więcej informacji, zobacz Setup for Media Services REST API Development (Konfigurowanie tworzenia interfejsu API REST usługi Media Services) i Connecting to Media Services with the Media Services REST API (Nawiązywanie połączenia z usługą Media Services za pomocą interfejsu API REST usługi Media Services).

Właściwości jednostki ContentKeyAuthorizationPolicyOption

Właściwość Typ Opis
Id

Tylko do odczytu. Ustawiane przez usługę Media Services.
Edm.String Unikatowy identyfikator.
Name Edm.String Przyjazna nazwa zasad autoryzacji.
KeyDeliveryType

Wymagane.
Edm. Int32 Metoda dostarczania klucza zawartości do klienta.

KeyDeliveryType może być jedną z następujących wartości: None = 0, PlayReadyLicense = 1, BaselineHttp = 2).
KeyDeliveryConfiguration Edm.String Dane XML specyficzne dla typu dostarczania klucza, który definiuje sposób dostarczania klucza do klienta.
Restrictions

Wymagane.
Kolekcja właściwości ContentKeyAuthorizationPolicyRestriction ComplexType. Aby dostarczyć klucz przy użyciu danych dostarczania kluczy, należy spełnić wymagania zdefiniowane w każdym ograniczeniu.

Właściwości Obiektu ContentKeyAuthorizationPolicyRestriction ComplexType

Właściwość Typ Opis
Name Edm.String Przyjazna nazwa ograniczenia.
KeyRestrictionType

Wymagane.
Edm. Int32 Typ ograniczenia.

KeyRestrictionType może być jedną z następujących wartości: Open = 0, TokenRestricted = 1, IPRestricted = 2.
Requirements Edm. Ciąg Wymagania dotyczące ograniczeń.

Tworzenie elementu ContentKeyAuthorizationPolicyOption

Poniższy przykład tworzy metodę dostarczania"KeyDeliveryType":2 klucza HTTP ContentKeyAuthorizationPolicyOption z następującymi wartościami: Open ograniczenie autoryzacji ("KeyRestrictionType":0) i baselineHttp (protokół klucza HTTP punktu odniesienia MPEG). Przykład można wypróbować na karcie Composer programu Fiddler.

Aby uzyskać najnowszą wersję x-ms-version:, zobacz Artykuł Usługa Media Services REST.

Nagłówki żądań:

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  

Treść żądania:

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

W przypadku powodzenia zostanie zwrócony kod stanu HTTP/1.1 201 Utworzony wraz z reprezentacją utworzonej jednostki w treści odpowiedzi.

Poniższy przykład tworzy metodę dostarczania"KeyDeliveryType":2 klucza HTTP ContentKeyAuthorizationPolicyOption z następującymi wartościami: Token ograniczenie autoryzacji ("KeyRestrictionType":1) i baselineHttp (protokół klucza HTTP punktu odniesienia MPEG).

Aby uzyskać najnowszą wersję x-ms-version:, zobacz Artykuł Usługa Media Services REST.

Nagłówki żądań:

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  
  

Treść żądania:

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