ILicenseAcquisitionHandler.HandleLicenseAcquisitionAsync Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Vom Dienst implementierte Methode zur Behandlung der Lizenzerquistionsanforderungen.
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)
Parameter
- challenge
- ILicenseChallenge
Vom Client empfangene ILicenseChallenge Analyse.
Gibt zurück
Die LicenseResponse , die an den Client zurückgegeben werden soll.
Hinweise
Eine Lizenzerwerbsanforderung ist eine Anforderung des Clients für Lizenzen, die das Recht gewähren, Aktionen für einen bestimmten Inhalt, Lizenzen, die schlüsselaustauschen, und/oder die aktuelle Serverzeit auszuführen. Bei dieser Methode führt der Dienst in der Regel die folgenden Schritte in der reihenfolge aus.
- Liest die CustomData aus der eingehenden Anforderung.
- Authentifizieren Sie den Benutzer.
- Wenn Lizenzen nur an Kunden mit registrierten Domänen übermittelt werden sollen, verhindern Sie, ob GetDomainCertificates() ein gültiges Zertifikat für diesen Client zurückgegeben wird, und lösen Sie eine aus DomainRequiredException , wenn nicht.
- Wenn Lizenz(en) ausgestellt werden sollen (erforderlich, sofern nicht LicenseServerTimeRequested true ist), erstellen Sie ein oder License mehrere Objekte.
- Fügen Sie für jedes License erstellte Element der Lizenz alle gewünschten Rights und Einschränkungen hinzu, um BindingKey die Lizenz an das entsprechende Zertifikat oder die Stammlizenz zu binden. Legen Sie für Inhaltslizenzen die ContentEncryptionKey -Eigenschaft fest. (Falls vorhanden, kann der Dienst die EncryptionType von verwenden, ContentHeader um die angeforderte ContentKeyTypezu bestimmen.) Rufen Sie dann auf AddLicense(License).
- Wenn ReeFeatureList enthält LicenseServerTime, legen Sie die LicenseServerTimeCertificate -Eigenschaft fest.
- Wenn Lizenzbestätigungsanforderungen unterstützt werden, legen Sie die TransactionId Eigenschaft fest, und speichern Sie Transaktionsdaten, die zum Überprüfen der Lizenzbestätigungsergebnisse erforderlich sind.
- Legen Sie alle zusätzlichen gewünschten Eigenschaften für fest LicenseResponse.