パラメーターは、コンマと角かっこで区切ってクエリ文字列に入力されます。 この構文は、PlayReady 3 の機能を完全にサポートするために 2017 年に導入されました。
- JSON 構文に似ています (実際の JSON ではありません)
- 読みやすく、編集しやすい
- アンパサンドのような安全でない文字を含めず、エスケープする必要はありません
- 注: クエリ文字列に空白文字 (' ') を含めてはなりません
- 注: base64 でエンコードされた引数では、'+' 文字を使用できます
- 1 つのライセンス応答で複数のライセンスを要求し、それぞれのパラメーターを設定できます。
- 例: SL3000 で設定された 1 つのキーで暗号化されたビデオ トラックと、SL2000 に設定された別のキーで暗号化されたオーディオ トラック。
- 新しい日時形式 yyyymmdd (例: 20171231) と、設定された時間、分、秒を許可する: yyyymmdd[hhmmss] (例: 20171231235959)
注: 永続的なライセンスを受け取る場合は、パラメーターに persist:true を含める必要があります。
例示
| LAURL (https://test.playready.microsoft.com/service/) | Description |
|---|---|
rightsmanager.asmx |
テスト キー シードを使用して、WRMHEADER で検出された子供の PLAY 権限とセキュリティ レベル 150 の非永続的なライセンスを 1 つ返します |
rightsmanager.asmx?cfg=(ckt:aescbc) |
PLAYREADY 4.0 の新機能。 (AESCTR ではなく) AESCBC 暗号化用に設定されたコンテンツ キーの種類を使用して、WRMHEADER で見つかったお子様の PLAY 権限を持つ非永続的ライセンスを 1 つ返します。 |
rightsmanager.asmx?cfg=(begindate:20170101,expiration:20170101010000) |
2017 年 1 月 1 日 0:00 の開始日と 2017 年 1 月 1 日午前 1 時の固定有効期限を使用して、WRMHEADER で見つかったお子様の PLAY 権限を持つ非永続的ライセンスを 1 つ返します。 |
rightsmanager.asmx?cfg=(persist:true,begindate:20170101,expiration:20170201,firstexp:60) |
最初のプレイから 60 秒後に、固定の開始日と終了日を持つ永続的なライセンスを 1 つ返します。 注: 永続的なライセンスを受信するには、persist:true を明示的に呼び出す必要があります。 |
rightsmanager.asmx?cfg=(kid:B6E39626-1CFB-4AA1-BCBD-4EF1ABA7843A,sl:3000),(kid:7C9484BA-C238-467A-869C-CDD8C7167712,sl:2000) |
PLAY 権限を持つ非永続的ライセンスを 2 つ返します。1 つはセキュリティ レベルが 3000 で、1 つはセキュリティ レベルが 2000 です。 注: これら 2 つの KID は WRMHEADER の KID と一致する必要があります |
パラメーター
| パラメーター | 説明 | 価値観 | コメント、例、既定値 |
|---|---|---|---|
| sl | ライセンスの最小セキュリティ レベルを設定する | 150, 2000, 3000 | 例: sl:3000 既定値は 150 です。 注: ビデオ キーは sl:3000 に設定できますが、一般に、クライアントは最大 sl:2000 に設定するオーディオ キーのみをサポートします |
| keyseed | 提供されたキー シードを使用してライセンスのコンテンツ キーを生成する | base64 バイト配列 | 例: keyseed:Wdkg2jsl3djgqSFer26XVBoVVRPzV EggUOSKSQaz 既定値は、ここで提供されるテスト キー シード です |
| お子様 | これらのプロパティを 1 つの KID に関連付けるためにプロパティのグループで使用されます | 'header'、またはレジストリ形式または base64 文字列の Guid | 例 1: kid:header 例 2: kid:e13a7861-d8cc-4284-9245-7c835ebde9f0 例 3: kid:YXg64czYhEKSRXyDXr3p8A== kid:header の場合、ライセンス サーバーは、ライセンス要求と共に来る WRMHEADER で見つかった KID を使用します。 この場合、WRMHEADER には 1 つの KID のみを含める必要があります。 |
| contentkey | コンテンツ キーを設定する | base64 バイト配列 | 例: contentkey:eNqVnXrElmo2NSsn7IXeEA== 既定値は key(TestKeySeed, kid) |
| ckt | コンテンツ キー暗号化の種類 (CTR または CBC) を指定します。 | aesctr 、aescbc | 例: ckt:aescbc 既定値は aesctr です ライセンスには、AESCBC 暗号化用のコンテンツ キー セットが含まれます PLAYREADY 4.0 の新機能 |
| tid | ライセンス応答で TransactionId を設定する | guid (任意) | 例: tid:3033E8F0-FB1B-4170-AD5C-60549AAB2C79 指定された値を LicenseResponse.TransactionId プロパティに追加します。このプロパティでは、指定されたトランザクション識別子を使用してライセンス確認チャレンジをクライアントにポストしてライセンス サーバーに戻す必要があります。 |
| playright | 再生権限を追加する | false、true | 例: playright:true 既定値は true です 注: 権利なしで返されたライセンスは、クライアントがコンテンツを使用することを許可しません |
| readright | 右の読み取りを追加する | false、true | 例: readright:true 既定値は false です |
| executeright | 実行権限を追加する | false、true | 例: executeright:true 既定値は false です |
| extendedright | 拡張権限を追加する | Integer. 例を参照してください | 例: (extendedright:(type:500,extended:((type:400, mustunderstand:true,besteffort:false,data:Ah==))) |
| 保持 | ライセンスを永続的または無効に設定する | false、true | 例: persist:true 既定値は false です。 ライセンスが非永続的に設定されている場合は、メディア プレーヤーのコンテキストで、RAM でのみクライアントに格納されます。 |
| simple | SimpleNonPersistentLicense を使用する | false、true | 例: simple:true 既定値は false です。 特定の SimpleNonPersistentLicense クラスを使用してライセンス応答を発行します。 このクラスは、以前のバージョンの Silverlight でサポートされていました。 |
| begindate | ライセンスが無効になる日付と時刻を設定する | yyyymmdd[hhmmss] (GMT) | 例: begindate:20170101 ライセンスは、2017 年 1 月 1 日 00:00:00 GMT より前のプレイ バックを許可しません |
| enddate または expiration | ライセンスが無効になる日付と時刻を設定する | yyyymmdd[hhmmss] (GMT) | 例 1: enddate:20170131 例 2: enddate:20170131235959 - ライセンスは、2017 年 1 月 31 日 23:59:59 GMT 以降に再生を許可しません |
| firstplayexpiration または firstexp | 最初の再生後に相対的な有効期限を設定する | 秒 (整数) | 例: firstexp:60 ライセンスでは、同じライセンスで最初の再生が開始されてから 60 秒後に再生を開始することはできません。 |
| リアルタイム | リアルタイムの有効期限制限を追加する | false、true | 例: realtime:true 既定値は false です このプロパティが設定されている場合、クライアントは、再生セッション中にリアルタイムで有効期限を適用する必要があります。 注: これは PlayReady 3 クライアントでのみサポートされます |
| removaldate | クライアントでライセンスを削除できる日付を設定する (GMT) | yyyymmdd[hhmmss] | 例: removaldate:20170228 クライアントがこのプロパティに基づいてライセンスを削除することは省略可能であることに注意してください。 ただし、Windows では、ライセンスを取得するたびにこの削除プロセスが実行されます。 このプロパティの設定に関するその他の制約については、Server SDK のドキュメントを参照してください。 |
| isroot | 要求されたライセンスが、定義されたルート KID を持つルート ライセンスである必要があります | false、true | 例: cfg=(isroot:true,kid:3C6F3C13-6207-4916-867C-8252B3993638) |
| rootid | リーフ ライセンスのルート KID を設定する | GUID (グローバルユニーク識別子) | 例: cfg=(rootid:3C6F3C13-6207-4916-867C-8252B3993638,kid:header),(isroot:true,kid:3C6F3C13-6207-4916-867C-8252B3993638) |
| sourceid | SourceID または制限付きソース ID の制限を設定する | 整数 (int) | 例: sourceid:267 PR セクション 6.12 で使用可能な値を確認する |
| caopl | 圧縮デジタル オーディオ出力保護レベルの制限を設定する | 整数 | 例: caopl:200 既定値は 0 です 通常、圧縮オーディオにセキュア オーディオ ドライバーを必要とします。 PR セクション 6.7 および 3.6.2 で使用可能な値を確認する サーバー SDK コード: right.CompressedDigitalAudioOPL = 200; |
| ucaopl | 非圧縮デジタル オーディオ出力保護レベルの制限を設定する | 整数 | 例: ucaopl:300 既定値は 0 です 通常、非圧縮オーディオに HDCP または DTCP を必要とします。 PR セクション 6.7 および 3.6.3 で許可されている値を確認する サーバー SDK コード: right.UncompressedDigitalAudioOPL = 300; |
| cvopl | 圧縮デジタルビデオ出力保護レベルの制限を設定する | 整数 | 例: cvopl:500 許可されるすべての値は、PlayReady 製品が圧縮された暗号化解除されたコンテンツのビデオ部分をビデオ出力に渡してはならないという同じ意味を持ちます。 PR セクション 6.7 および 3.6.4 で使用可能な値を確認する サーバー SDK コード: right.CompressedDigitalVideoOPL = 500; |
| ucvopl | 非圧縮デジタル ビデオ出力保護レベルの制限を設定する | 整数 | 例: ucvopl:300 既定値は 0 です 通常、圧縮されていないビデオに対して HDMI で HDCP を要求します。 PR セクション 6.7 および 3.6.5 で使用可能な値を確認する サーバー SDK コード: right.UncompressedDigitalVideoOPL = 300; |
| avopl | アナログビデオ出力保護レベルの制限を設定する | 整数 | 例: avopl:200 で CGMS-A コピーを要求しない 6.7 および 3.6.6 のセクションで使用可能な値を確認する サーバー SDK コード: right.AnalogVideoOPL = 200; |
| dvop | 明示的なデジタル ビデオ出力保護を追加する | base 64 文字列でエンコードされた guid と省略可能なデータ | 例: dvop:(guid:ABB2C6F1-E663-4625-A945-972D17B231E7,data:AAAAAQ===) で HDCP タイプ 1 が必要です。 PR セクション 3.6.5.7 を参照してください。 サーバー SDK コード: right.AddDigitalVideoOutputProtection(new Guid("", 1)) |
| daop | 明示的なデジタル オーディオ出力保護を追加する | base 64 文字列でエンコードされた guid と省略可能なデータ | 例: daop:(guid:6D5CFA59-C250-4426-930E-FAC72C8FCFA6,data:AAAAAQ===) は SCMS を要求します。 PR セクション 3.6.3.8 を参照してください。 サーバー SDK コード: right.AddDigitalAudioOutputProtection(new Guid("{6D5CFA59-C250-4426-930E-FAC72C8FCFA6}", 1)) |
| avop | 明示的なアナログ ビデオ出力保護を追加する | base 64 文字列でエンコードされた guid とデータ | 例: avop:(guid:760AE755-682A-41E0-B1B3-DCDF836A7306,data:AAAAAQ==) to PR セクション 6.5 で許可されている値を確認します。 サーバー SDK コード: right.AddAnalogVideoOutputProtection(new Guid("{760AE755-682A-41E0-B1B3-DCDF836A7306}", 1) |
| extendedrestrictions | 1 つまたは複数の拡張制限を右側に追加する | 整数とプロパティ(例を参照) | 例: (extendedrestrictions:((type:400, mustunderstand:true,besteffort:false,data:Ah==),(type:401, mustunderstand:true,besteffort:false,data:Ah==))) 他の権限が設定されていない場合は、Play 権限に適用されるものとします。 |
| playenablers | 1 つまたは複数の Play Enablers をライセンスに追加する | guid または guid のグループ | 例 1: playenablers:(786627D8-C2A6-44BE-8F88-08AE255B01A7) (不明な出力を許可)。 例 2: playenablers:(786627D8-C2A6-44BE-8F88-08AE255B01A7,5ABF0F0D-DC29-4B82-9982-FD8E57525BFC) (不明な出力と AirPlay を許可)。 すべての Play Enabler の PR を参照してください。 |
| 以下のパラメーターは、前述の制限とプレイ の有効化機能の特定の組み合わせの短縮形です | |||
| explicitacp | アナログビデオの自動ゲイン制御とカラーストライプ制限を設定する | integer 0,1,2,3 | 例: explicitacp:2 同等: avop(guid:C3FD11C6-F8B7-4D20-B008-1DB17D61F2DA,data:AgAAAA==) 6.5.1 および 3.6.7.2 のセクションを参照してください。 サーバー SDK コード: right.AddAnalogVideoOutputProtection(new ExplicitOutputProtection(new Guid("C3FD11C6-F8B7-4D20-B008-1DB17D61F2DA"), HeightBytes.Concat(WidthBytes).ToArray())) |
| maxres | 最大有効解像度デコード サイズ制限を設定する | integer x integer | 例: maxres:1920x1080 同等: dvop:(guid:9645E831-E01D-4FFF-8342-0A720E3E028F,data:AAAEOAAAB4A=) 6.5 および 3.6.5.7.1 のセクションを参照してください。 サーバー SDK コード: right.AddDigitalVideoOutputProtection(new ExplicitOutputProtection(new Guid("9645E831-E01D-4FFF-8342-0A720E3E028F"), BitConverter.GetBytes((int)value)) |
| allowunknownsd | 制約付き解像度の不明な出力用の出力コントロールを追加する | false、true | 例: allowunknownsd:true 同等: playenablers:(B621D91F-EDCC-4035-8D4B-DC71760D43E9) PR セクション 3.9.2 を参照してください。 サーバー SDK コード: right.AddPlayEnabler(new PlayEnabler(new Guid("B621D91F-EDCC-4035-8D4B-DC71760D43E9"))) |
| allowunknownhd | 任意の解像度で不明な出力用の出力コントロールを追加する | false、true | 例: allowunknownhd:true 同等: playenablers:(786627D8-C2A6-44BE-8F88-08AE255B01A7) PR セクション 3.9.1 を参照してください。 サーバー SDK コード: right.AddPlayEnabler(new PlayEnabler(new Guid("786627D8-C2A6-44BE-8F88-08AE255B01A7"))) |
| clientinfo | 特殊なリフレクション機能。 詳細については 、このページ を参照してください。 |