Freigeben über


Dokumentation zur Abfragezeichenfolgensyntax

Parameter werden in die Abfragezeichenfolge eingegeben, getrennt durch Kommas und Klammern. Diese Syntax wurde 2017 eingeführt, um PlayReady 3-Funktionen vollständig zu unterstützen:

  • Ähnlich wie bei einer JSON-Syntax (jedoch keine echte JSON)
  • Einfach zu lesen und zu bearbeiten
  • Enthält keine unsicheren Zeichen (z. B. kaufmännisches Und-Zeichen) und sollte keines davon entfernen.
  • Hinweis: Die Abfragezeichenfolge darf keine Leerzeichen (' ') enthalten.
  • Hinweis: '+' Zeichen sind in den base64-codierten Argumenten zulässig.
  • Ermöglicht das Anfordern mehrerer Lizenzen in einer Lizenzantwort und das Festlegen von Parametern für jede lizenzbezogene Antwort.
  • Beispiel: Videospur, verschlüsselt mit einem Schlüssel, der auf SL3000 festgelegt ist, und Audiospur, die mit einem anderen Schlüssel auf SL2000 verschlüsselt wurde.
  • Neues Datums-Uhrzeitformat jjjjmmdd (Beispiel: 20171231) und ermöglicht Festlegen von Stunden, Minuten und Sekunden: yyyymmdd[hhmmss] (Beispiel: 20171231235959)

Hinweis: Die Parameter müssen persist:true enthalten, wenn Sie persistente Lizenzen erhalten möchten.

Beispiele

LAURL (https://test.playready.microsoft.com/service/) Description
rightsmanager.asmx Zurückgeben einer nicht persistenten Lizenz mit einem PLAY-Recht und einer Sicherheitsstufe von 150 für das Kind, das im WRMHEADER gefunden wurde, mit dem Test Key Seed
rightsmanager.asmx?cfg=(ckt:aescbc) NEU IN PLAYREADY 4.0. Zurückgeben einer nicht persistenten Lizenz mit play right for the kid found in the WRMHEADER, with a content key type set for AESCBC encryption (as as to AESCTR)
rightsmanager.asmx?cfg=(begindate:20170101,expiration:20170101010000) Zurückgeben einer nicht persistenten Lizenz mit einem PLAY-Recht für das Kind, das im WRMHEADER gefunden wurde, mit dem Test Key Seed, mit einem Anfangstermin vom 1. Januar 2017 0:00 und einem festen Ablauf vom 1. Januar 2017 1:00Am
rightsmanager.asmx?cfg=(persist:true,begindate:20170101,expiration:20170201,firstexp:60) Zurückgeben einer dauerhaften Lizenz mit festen Anfangs- und Enddaten und einem relativen Ablauf von 60 Sekunden nach der ersten Wiedergabe. Hinweis: Sie müssen "persist:true" explizit aufrufen, um persistente Lizenzen zu erhalten.
rightsmanager.asmx?cfg=(kid:B6E39626-1CFB-4AA1-BCBD-4EF1ABA7843A,sl:3000),(kid:7C9484BA-C238-467A-869C-CDD8C7167712,sl:2000) Gibt zwei nicht persistente Lizenzen mit PLAY-Rechten zurück, eine mit einer Sicherheitsstufe von 3000, eine mit einer Sicherheitsstufe von 2000. Hinweis: Diese beiden KIDs müssen mit den KIDs im WRMHEADER übereinstimmen.

Parameter

Parameter Bedeutung Werte Kommentare, Beispiele, Standardwert
Sl Festlegen der Mindestsicherheitsstufe für eine Lizenz 150, 2000, 3000 Beispiel: sl:3000
Der Standardwert ist 150.
Hinweis: Der Videoschlüssel kann auf sl:3000 festgelegt werden, in der Regel unterstützen Clients jedoch nur Audioschlüssel, die auf sl:2000 maximum festgelegt werden.
Keyseed Verwenden des bereitgestellten Schlüssels zum Generieren des Inhaltsschlüssels in den Lizenzen Base64-Bytearray Beispiel: keyseed:Wdkg2jsl3djgqSFer26XVBoVVRPzVEggUOSKSQaz
Standardwert ist der hier bereitgestellte Testschlüsselsamenwert.
Kind Wird in einer Gruppe von Eigenschaften verwendet, um diese Eigenschaften einem KID zuzuordnen. 'header' oder GUID im Registrierungsformat oder base64-Zeichenfolge Beispiel 1: kid:header
Beispiel 2: kid:e13a7861-d8cc-4284-9245-7c835ebde9f0
Beispiel 3: kid:YXg64czYhEKSRXyDXr3p8A==
Im Falle von kid:header verwendet der Lizenzserver das KID, das in der WRMHEADER enthalten ist, die zusammen mit der Lizenzanforderung enthalten ist. In diesem Fall muss der WRMHEADER nur ein KID enthalten.
contentkey Festlegen des Inhaltsschlüssels Base64-Bytearray Beispiel: contentkey:eNqVnXrElmo2NSsn7IXeEA==
Standardwert ist key(TestKeySeed, kid)
ckt Gibt den Verschlüsselungstyp des Inhaltsschlüssels (CTR oder CBC) an. aesctr , aescbc Beispiel: ckt:aescbc
Standardwert ist "aesctr"
Die Lizenz enthält einen Inhaltsschlüsselsatz für die AESCBC-Verschlüsselung.
NEU IN PLAYREADY 4.0
tid Festlegen einer TransactionId in der Lizenzantwort guid (beliebig) Beispiel: tid:3033E8F0-FB1B-4170-AD5C-60549AAB2C79
Fügt der LicenseResponse.TransactionId-Eigenschaft den bereitgestellten Wert hinzu, der erfordert, dass der Client eine Lizenzbestätigungsaufforderung mithilfe des angegebenen Transaktionsbezeichners zurück an den Lizenzserver sendet.
 
Playright Hinzufügen eines Wiedergaberechts falsch, wahr Beispiel: playright:true
Der Standardwert ist true.
Hinweis: Eine ohne Recht zurückgegebene Lizenz erlaubt dem Client nicht, den Inhalt zu nutzen.
schreibgeschützt Rechts lesen falsch, wahr Beispiel: readright:true
Der Standardwert ist false.
executeright Rechts ausführen falsch, wahr Beispiel: executeright:true
Der Standardwert ist false.
extendedright Hinzufügen eines erweiterten Rechts Eine ganze Zahl. Sehen Sie sich das Beispiel an Beispiel: (extendedright:(type:500,extended:(type:400, mustunderstand:true,besteffort:false,data:Ah==))
Beibehalten Festlegen der Lizenz als beständig oder nicht falsch, wahr Beispiel: persist:true
Der Standardwert ist „false“.
Wenn die Lizenz nicht dauerhaft festgelegt ist, wird sie nur im Kontext des Media Players auf dem Client im RAM gespeichert.
Einfach Verwenden eines SimpleNonPersistentLicense falsch, wahr Beispiel: simple:true
Der Standardwert ist „false“.
Verwendet eine bestimmte SimpleNonPersistentLicense-Klasse, um die Lizenzantwort auszuweisen. Diese Klasse wurde in älteren Versionen von Silverlight unterstützt.
 
begindate Festlegen eines Datums und einer Uhrzeit, vor der die Lizenz deaktiviert ist yyyymmdd[hhmmss] (GMT) Beispiel: begindate:20170101
Die Lizenz lässt keine Wiedergabe vor dem 1. Januar 2017 00:00:00 GMT zu
Enddatum oder Ablauf Festlegen eines Datums und einer Uhrzeit, nach der die Lizenz deaktiviert ist yyyymmdd[hhmmss] (GMT) Beispiel 1: enddate:20170131
Beispiel 2: enddate:20170131235959 - Die Lizenz lässt nach dem 31. Januar 2017 23:59:59 GMT keine Wiedergabe zu
firstplayexpiration or firstexp Festlegen eines relativen Ablaufs nach der ersten Wiedergabe Sekunden in ganzzahliger Zahl Beispiel: firstexp:60
Die Lizenz lässt nicht zu, dass eine Wiedergabe genau 60 Sekunden nach dem Starten einer ersten Wiedergabe mit derselben Lizenz gestartet wurde.
Echtzeit Hinzufügen einer Echtzeitablaufbeschränkung falsch, wahr Beispiel: realtime:true
Der Standardwert ist false.
Wenn diese Eigenschaft festgelegt ist, ist sie vom Client erforderlich, um ablaufen während einer Wiedergabesitzung in Echtzeit zu erzwingen.
Hinweis: Dies wird nur von PlayReady 3-Clients unterstützt.
Entfernungsdatum Festlegen eines Datums, an dem die Lizenz auf dem Client (GMT) gelöscht werden kann yyyymmdd[hhmmss] Beispiel: Removaldate:20170228
Beachten Sie, dass es für Clients optional ist, Lizenzen basierend auf dieser Eigenschaft zu entfernen. Windows führt diesen Entfernungsprozess jedoch bei jedem Lizenzerwerb aus.
Weitere Einschränkungen zum Festlegen dieser Eigenschaft finden Sie in der Server SDK-Dokumentation.
 
isroot Erfordert, dass die angeforderte Lizenz eine Stammlizenz mit dem definierten Stamm-KID ist. falsch, wahr Beispiel: cfg=(isroot:true,kid:3C6F3C13-6207-4916-867C-8252B3993638)
rootid Festlegen der Stamm-KID für eine Blattlizenz guid Beispiel: cfg=(rootid:3C6F3C13-6207-4916-867C-8252B3993638,kid:header),(isroot:true,kid:3C6F3C13-6207-4916-867C-8252B3993638)
 
sourceid Festlegen der Einschränkung "SourceID" oder "Eingeschränkte Quell-ID" INT Beispiel: sourceid:267
Überprüfen der zulässigen Werte im Abschnitt "CRs" 6.12
 
caopl Festlegen einer Einschränkung des komprimierten Digitalen Audioausgabeschutzniveaus Integer Beispiel: caopl:200
Der Standardwert ist 0.
In der Regel müssen sichere Audiotreiber für komprimierte Audiodaten erforderlich sein.
Überprüfen der zulässigen Werte im Abschnitt 6.7 und 3.6.2
Server SDK-Code:
right.CompressedDigitalAudioOPL = 200;
ucaopl Festlegen einer Einschränkung des nicht komprimierten Schutzniveaus für digitale Audioausgabe Integer Beispiel: ucaopl:300
Der Standardwert ist 0.
In der Regel müssen HDCP oder DTCP für nicht komprimierte Audiodaten erforderlich sein.
Überprüfen der zulässigen Werte im Abschnitt 6.7 und 3.6.3
Server SDK-Code:
right.UncompressedDigitalAudioOPL = 300;
cvopl Festlegen einer Einschränkung des komprimierten Digitalen Videoausgabeschutzniveaus Integer Beispiel: cvopl:500
Alle zulässigen Werte haben die gleiche Bedeutung, dass ein PlayReady-Produkt den Videoteil der komprimierten entschlüsselten Inhalte nicht an eine Videoausgabe übergeben darf.
Überprüfen der zulässigen Werte im Abschnitt 6.7 und 3.6.4
Server SDK-Code:
right.CompressedDigitalVideoOPL = 500;
ucvopl Festlegen einer Einschränkung des nicht komprimierten Digitalen Videoausgabeschutzniveaus Integer Beispiel: ucvopl:300
Der Standardwert ist 0.
In der Regel müssen HDCP auf HDMI für nicht komprimierte Videos erforderlich sein.
Überprüfen der zulässigen Werte im Abschnitt 6.7 und 3.6.5
Server SDK-Code:
right.UncompressedDigitalVideoOPL = 300;
avopl Festlegen einer Einschränkung für analoge Videoausgabeschutzebene Integer Beispiel: avopl:200, damit CGMS-A Kopie niemals erforderlich ist
Überprüfen der zulässigen Werte im Abschnitt 6.7 und 3.6.6
Server SDK-Code:
right.AnalogVideoOPL = 200;
dvop Hinzufügen eines expliziten Digitalen Videoausgabeschutzes GUID und optionale Daten, die in base64-Zeichenfolge codiert sind Beispiel: dvop:(guid:ABB2C6F1-E663-4625-A945-972D17B231E7,data:AAAAAQ==) erfordert HDCP Typ 1.
Siehe Abschnitt 3.6.5.7.
Server SDK-Code:
right.AddDigitalVideoOutputProtection(new Guid("", 1))
Daop Hinzufügen eines expliziten Digitalen Audioausgabeschutzes GUID und optionale Daten, die in base64-Zeichenfolge codiert sind Beispiel: daop:(guid:6D5CFA59-C250-4426-930E-FAC72C8FCFA6,data:AAAAAQ==) für SCMS erforderlich.
Siehe Abschnitt 3.6.3.8 der CRs.
Server SDK-Code:
right.AddDigitalAudioOutputProtection(new Guid("{6D5CFA59-C250-4426-930E-FAC72C8FCFA6}", 1))
avop Hinzufügen eines expliziten Analogvideoausgabeschutzes guid und datencodiert in base64-Zeichenfolge Beispiel: avop:(guid:760AE755-682A-41E0-B1B3-DCDF836A7306,data:AAAAAQ==)
Überprüfen Sie die zulässigen Werte im Abschnitt CRs 6.5.
Server SDK-Code:
right.AddAnalogVideoOutputProtection(new Guid("{760AE755-682A-41E0-B1B3-DCDF836A7306}", 1)
 
extendedrestrictions Hinzufügen einer oder mehrerer erweiterter Einschränkungen rechts Ganze Zahl und Eigenschaften, siehe Beispiel Beispiel: (extendedrestrictions:(type:400, mustunderstand:true,besteffort:false,data:Ah==),(type:401, mustunderstand:true,besteffort:false,data:Ah==)))
Setzt voraus, dass sie auf das Recht "Wiedergeben" angewendet wird, wenn kein anderes Recht festgelegt ist.
Playenablers Hinzufügen einer oder mehrerer Wiedergabeaktivierer zur Lizenz GUID oder Gruppe von GUIDs Beispiel 1: Playenablers:(786627D8-C2A6-44BE-8F88-08AE255B01A7) (Unbekannte Ausgaben zulassen).
Beispiel 2: Playenablers:(786627D8-C2A6-44BE-8F88-08AE255B01A7,5ABF0F0D-DC29-4B82-9982-FD8E57525BFC) (Unbekannte Ausgaben und AirPlay zulassen).
Sehen Sie sich die CRs für alle Play Enablers an.
 
 
  Die folgenden Parameter sind Kurzhands für bestimmte Kombinationen von Einschränkungen und Spielaktivierern, die oben beschrieben werden.
 
explicitacp Festlegen einer Automatischen Verstärkungssteuerung und Farbstreifeneinschränkung für analoges Video ganze Zahl 0,1,2,3 Beispiel: explicitacp:2
Entspricht: avop(guid:C3FD11C6-F8B7-4D20-B008-1DB17D61F2DA,data:AgAAAA==)
Siehe Abschnitt 6.5.1 und 3.6.7.2.
Server SDK-Code:
right.AddAnalogVideoOutputProtection(new ExplicitOutputProtection(new Guid("C3FD11C6-F8B7-4D20-B008-1DB17D61F2DA"), HeightBytes.Concat(WidthBytes).ToArray()))
maxres Festlegen einer Größenbeschränkung für die maximale effektive Auflösungsauflösung ganze Zahl x ganze Zahl Beispiel: maxres:1920x1080
Entspricht: dvop:(guid:9645E831-E01D-4FFF-8342-0A720E3E028F,data:AAAEOAAAB4A=)
Siehe Abschnitt 6.5 und 3.6.5.7.1.
Server SDK-Code:
right.AddDigitalVideoOutputProtection(new ExplicitOutputProtection(new Guid("9645E831-E01D-4FFF-8342-0A720E3E028F"), BitConverter.GetBytes((int)value))
allowunknownsd Hinzufügen eines Ausgabesteuerelements für unbekannte Ausgabe für eingeschränkte Auflösung falsch, wahr Beispiel: allowunknownsd:true
Entspricht: Playenablers:(B621D91F-EDCC-4035-8D4B-DC71760D43E9)
Siehe Abschnitt 3.9.2 der CRs.
Server SDK-Code:
right.AddPlayEnabler(new PlayEnabler(new Guid("B621D91F-EDCC-4035-8D4B-DC71760D43E9")))
allowunknownhd Hinzufügen eines Ausgabesteuerelements für unbekannte Ausgabe für eine beliebige Auflösung falsch, wahr Beispiel: allowunknownhd:true
Entspricht: playenablers:(786627D8-C2A6-44BE-8F88-08AE255B01A7)
Siehe Abschnitt 3.9.1 der CRs.
Server SDK-Code:
right.AddPlayEnabler(new PlayEnabler(new Guid("786627D8-C2A6-44BE-8F88-08AE255B01A7")))
 
Clientinfo Besondere Spiegelungsfunktion. Weitere Informationen finden Sie auf dieser Seite .