ILicenseAcquisitionHandler.HandleLicenseAcquisitionAsync Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Il metodo implementato dal servizio gestisce le richieste di acquisto delle licenze.
public System.Threading.Tasks.Task<Microsoft.Media.Drm.LicenseResponse> HandleLicenseAcquisitionAsync (Microsoft.Media.Drm.ILicenseChallenge challenge);
abstract member HandleLicenseAcquisitionAsync : Microsoft.Media.Drm.ILicenseChallenge -> System.Threading.Tasks.Task<Microsoft.Media.Drm.LicenseResponse>
Public Function HandleLicenseAcquisitionAsync (challenge As ILicenseChallenge) As Task(Of LicenseResponse)
Parametri
- challenge
- ILicenseChallenge
Analizzato ricevuto ILicenseChallenge dal client.
Restituisce
Oggetto LicenseResponse da restituire al client.
Commenti
Una richiesta di acquisizione delle licenze è una richiesta del client per le licenze che concedono il diritto di eseguire azioni su una determinata parte di contenuto, licenze che forniscono lo scambio di chiavi e/o l'ora del server corrente. In questo metodo, il servizio esegue in genere i passaggi seguenti nell'ordine.
- Leggere dalla CustomData richiesta in ingresso.
- Autenticare l'utente.
- Se le licenze devono essere recapitate solo ai clienti con domini registrati, scoraggiare se GetDomainCertificates() restituisce un certificato valido per questo client e generare un'eccezione DomainRequiredException in caso contrario.
- Se le licenze devono essere rilasciate (obbligatorio, a meno che LicenseServerTimeRequested non sia true), creare uno o più License oggetti.
- Per ogni License creato, aggiungere eventuali restrizioni e s desiderate Rightalla licenza e BindingKey a per associare la licenza al certificato o alla licenza radice appropriata. Per le licenze di contenuto, impostare la ContentEncryptionKey proprietà . Se presente, il servizio può usare da EncryptionTypeContentHeader per determinare l'oggetto richiesto ContentKeyType. Chiamare AddLicense(License)quindi .
- Se ReeFeatureList contiene LicenseServerTime, impostare la LicenseServerTimeCertificate proprietà .
- Se le richieste di riconoscimento delle licenze sono supportate, impostare la TransactionId proprietà e archiviare i dati transazionali necessari per verificare i risultati dell'acknowledgement della licenza.
- Impostare eventuali proprietà desiderate aggiuntive in LicenseResponse.