Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los parámetros se escriben en la cadena de consulta, separados por comas y corchetes. Esta sintaxis se introdujo en 2017 para admitir completamente las funcionalidades de PlayReady 3:
- Similar a una sintaxis JSON (sin embargo, no json real)
- Fácil de leer y editar
- No incluye caracteres no seguros (como ampersand) y no debe requerir escape a ninguno de ellos.
- Nota: la cadena de consulta no debe incluir ningún carácter de espacio (' ')
- Nota: Los caracteres '+' son aceptables en los argumentos codificados en base64
- Permite solicitar varias licencias en una respuesta de licencia y establecer parámetros para cada una de ellas.
- Ejemplo: pista de vídeo cifrada con un conjunto de claves en SL3000 y pista de audio cifrada con otro conjunto de claves en SL2000.
- Nuevo formato de fecha yyyymmddd (ejemplo: 20171231) y permite establecer horas, minutos y segundos: aaaammdd[hhmmss] (ejemplo: 20171231235959)
Nota: Los parámetros deben incluir persist:true si desea recibir licencias persistentes.
Examples
| LAURL (https://test.playready.microsoft.com/service/) | Description |
|---|---|
rightsmanager.asmx |
Devolver una licencia no persistente con un derecho PLAY y un nivel de seguridad de 150 para el niño encontrado en el WRMHEADER, usando la inicialización de clave de prueba |
rightsmanager.asmx?cfg=(ckt:aes128bitcbc) |
NUEVO EN PLAYREADY 4.0. Devolver una licencia no persistente con un derecho PLAY para el niño que se encuentra en WRMHEADER, con un tipo de clave de contenido establecido para el cifrado AESCBC (en lugar de AESCTR) |
rightsmanager.asmx?cfg=(begindate:20170101,expiration:20170101010000) |
Devolver una licencia no persistente con un derecho PLAY para el niño encontrado en WRMHEADER, utilizando la inicialización de clave de prueba, con una fecha de inicio del 1 de enero de 2017 0:00, y una expiración fija del 1 de enero de 2017 1:00am |
rightsmanager.asmx?cfg=(persist:true,begindate:20170101,expiration:20170201,firstexp:60) |
Devuelve una licencia persistente con fechas de inicio y finalización fijas y una expiración relativa de 60 segundos después de la primera reproducción. Nota: Tiene que llamar explícitamente a persist:true para recibir licencias persistentes. |
rightsmanager.asmx?cfg=(kid:B6E39626-1CFB-4AA1-BCBD-4EF1ABA7843A,sl:3000),(kid:7C9484BA-C238-467A-869C-CDD8C7167712,sl:2000) |
Devuelve dos licencias no persistentes con derechos PLAY, uno con un nivel de seguridad de 3000, uno con un nivel de seguridad de 2000. Nota: estos dos KID deben coincidir con los KID en el WRMHEADER |
Parámetros
| Parámetro | Meaning | Valores | Comentarios, ejemplos, valor predeterminado |
|---|---|---|---|
| Sl | Establecer el nivel de seguridad mínimo para una licencia | 150, 2000, 3000 | Ejemplo: sl:3000 El valor predeterminado es 150. Nota: la clave de vídeo se puede establecer en sl:3000, pero en general, los clientes solo admiten claves de audio para establecerse en sl:2000 maximum |
| keyseed | Use la inicialización de clave proporcionada para generar la clave de contenido en las licencias. | Matriz de bytes base64 | Ejemplo: keyseed:Wdkg2jsl3djgqSFer26XVBoVVRPzVEggUOSKSQaz El valor predeterminado es la inicialización de clave de prueba que se proporciona aquí. |
| cabrito | Se usa en un grupo de propiedades para asociar estas propiedades a un KID | 'header', o Guid en formato del Registro o cadena base64 | Ejemplo 1: kid:header Ejemplo 2: kid:e13a7861-d8cc-4284-9245-7c835ebde9f0 Ejemplo 3: kid:YXg64czYhEKSRXyDXr3p8A== En el caso de kid:header, el servidor de licencias usa el KID encontrado en EL WRMHEADER que viene junto con la solicitud de licencia. En este caso, WRMHEADER tiene que incluir solo un KID |
| contentkey | Establecimiento de la clave de contenido | Matriz de bytes base64 | Ejemplo: contentkey:eNqVnXrElmo2NSsn7IXeEA== El valor predeterminado es key(TestKeySeed, kid) |
| ckt | Especifica el tipo de cifrado de clave de contenido (CTR o CBC) | aes128bitctr , aes128bitcbc , keyexchange | Ejemplo: ckt:aes128bitcbc El valor predeterminado es aes128bitctr La licencia incluirá un conjunto de claves de contenido para el cifrado AESCBC. NOVEDADES DE PLAYREADY 4.0 |
| tid | Establecimiento de un TransactionId en la respuesta de licencia | guid (arbitrario) | Ejemplo: tid:3033E8F0-FB1B-4170-AD5C-60549AAB2C79 Agrega el valor proporcionado a la propiedad LicenseResponse.TransactionId, que requerirá que el cliente publique un desafío de confirmación de licencia mediante el identificador de transacción especificado al servidor de licencias. |
| playright | Agregar una reproducción a la derecha | falso, verdadero | Ejemplo: playright:true El valor predeterminado es true Nota: una licencia devuelta sin derecho no permitirá al cliente consumir el contenido. |
| readright | Agregar un derecho de lectura | falso, verdadero | Ejemplo: readright:true El valor predeterminado es false. |
| executeright | Agregar un comando Ejecutar a la derecha | falso, verdadero | Ejemplo: executeright:true El valor predeterminado es false. |
| extendedright | Agregar un derecho extendido | Entero. Consulte el ejemplo. | Ejemplo: (extendedright:(type:500,extended:(type:400, mustunderstand:true,besteffort:false,data:Ah==)) |
| persist | Establecer la licencia como persistente o no | falso, verdadero | Ejemplo: persist:true El valor predeterminado es Falso. Si la licencia se establece no persistente, se almacena en el cliente solo en RAM, en el contexto del reproductor multimedia. |
| simple | Uso de SimpleNonPersistentLicense | falso, verdadero | Ejemplo: simple:true El valor predeterminado es Falso. Usa una clase SimpleNonPersistentLicense específica para emitir la respuesta de licencia. Esta clase se admite en versiones anteriores de Silverlight. |
| begindate | Establecer una fecha y hora antes de la cual la licencia está deshabilitada | aaaammdd[hhmmss] (GMT) | Ejemplo: begindate:20170101 La licencia no permitirá reproducir antes del 1 de enero de 2017 00:00:00 GMT |
| enddate o expiration | Establecer una fecha y hora después de la cual la licencia está deshabilitada | aaaammdd[hhmmss] (GMT) | Ejemplo 1: enddate:20170131 Ejemplo 2: enddate:20170131235959: la licencia no permitirá reproducirse después del 31 de enero de 2017 23:59:59 GMT |
| firstplayexpiration o firstexp | Establecer una expiración relativa después de la primera reproducción | segundos en entero | Ejemplo: firstexp:60 La licencia no permitirá iniciar una reproducción exactamente 60 segundos después de que se haya iniciado una primera reproducción con esa misma licencia. |
| en tiempo real | Agregar una restricción de expiración en tiempo real | falso, verdadero | Ejemplo: realtime:true El valor predeterminado es false. Si se establece esta propiedad, el cliente requiere que el cliente aplique expiraciones durante una sesión de reproducción en tiempo real. Nota: Esto solo es compatible con los clientes de PlayReady 3. |
| removaldate | Establecer una fecha en la que se puede eliminar la licencia en el cliente (GMT) | aaaammdd[hhmmss] | Ejemplo: removaldate:20170228 Tenga en cuenta que es opcional para que los clientes quiten licencias basadas en esta propiedad. Sin embargo, Windows ejecuta este proceso de eliminación en cada adquisición de licencias. Consulte la documentación del SDK de servidor para obtener restricciones adicionales sobre cómo establecer esta propiedad. |
| isroot | Requiere que la licencia solicitada sea una licencia raíz con el KID raíz definido. | falso, verdadero | Ejemplo: cfg=(isroot:true,kid:3C6F3C13-6207-4916-867C-8252B3993638) |
| rootid | Establecer el KID raíz para una licencia hoja | guid | Ejemplo: cfg=(rootid:3C6F3C13-6207-4916-867C-8252B3993638,kid:header),(isroot:true,kid:3C6F3C13-6207-4916-867C-8252B3993638) |
| sourceid | Establecimiento de la restricción sourceID o de identificador de origen restringido | int | Ejemplo: sourceid:267 Compruebe los valores permitidos en la sección 6.12 de las RS. |
| caopl | Establecimiento de una restricción de nivel de protección de salida de audio digital comprimido | entero | Ejemplo: caopl:200 El valor predeterminado es 0 Normalmente, para requerir controladores de audio seguros para el audio comprimido. Compruebe los valores permitidos en la sección 6.7 y 3.6.2 de las RS. Código del SDK del servidor: right.CompressedDigitalAudioOPL = 200; |
| ucaopl | Establecer una restricción de nivel de protección de salida de audio digital sin comprimir | entero | Ejemplo: ucaopl:300 El valor predeterminado es 0 Normalmente, para requerir HDCP o DTCP para audio sin comprimir. Compruebe los valores permitidos en la sección 6.7 y 3.6.3 de las RS. Código del SDK del servidor: right.UncompressedDigitalAudioOPL = 300; |
| cvopl | Establecimiento de una restricción de nivel de protección de salida de vídeo digital comprimido | entero | Ejemplo: cvopl:500 Todos los valores permitidos tienen el mismo significado que un producto playReady no debe pasar la parte de vídeo del contenido descifrado comprimido a cualquier salida de vídeo. Compruebe los valores permitidos en la sección 6.7 y 3.6.4 de las RS. Código del SDK del servidor: right.CompressedDigitalVideoOPL = 500; |
| ucvopl | Establecer una restricción de nivel de protección de salida de vídeo digital sin comprimir | entero | Ejemplo: ucvopl:300 El valor predeterminado es 0 Normalmente, para requerir HDCP en HDMI para vídeo sin comprimir. Comprobación de los valores permitidos en la sección 6.7 y 3.6.5 Código del SDK del servidor: right.UncompressedDigitalVideoOPL = 300; |
| avopl | Establecimiento de una restricción de nivel de protección de salida de vídeo analógico | entero | Ejemplo: avopl:200 para requerir CGMS-A copia nunca Compruebe los valores permitidos en la sección 6.7 y 3.6.6 Código del SDK del servidor: right.AnalogVideoOPL = 200; |
| dvop | Adición de una protección explícita de salida de vídeo digital | guid y datos opcionales codificados en cadena base 64 | Ejemplo: dvop:(guid:ABB2C6F1-E663-4625-A945-972D17B231E7,data:AAAAAQ==) para requerir el tipo 1 de HDCP. Consulte la sección 3.6.5.7 de LASR. Código del SDK del servidor: right.AddDigitalVideoOutputProtection(new Guid("", 1)) |
| daop | Agregar una protección explícita de salida de audio digital | guid y datos opcionales codificados en cadena base 64 | Ejemplo: daop:(guid:6D5CFA59-C250-4426-930E-FAC72C8FCFA6,data:AAAAAQ==) para requerir SCMS. Consulte la sección 3.6.3.8 de LASR. Código del SDK del servidor: right.AddDigitalAudioOutputProtection(new Guid("{6D5CFA59-C250-4426-930E-FAC72C8FCFA6}", 1)) |
| avop | Agregar una protección explícita de salida de vídeo analógico | guid y datos codificados en la cadena base 64 | Ejemplo: avop:(guid:760AE755-682A-41E0-B1B3-DCDF836A7306,data:AAAAAQ==) a Compruebe los valores permitidos en la sección 6.5 de las RS. Código del SDK del servidor: right.AddAnalogVideoOutputProtection(new Guid("{760AE755-682A-41E0-B1B3-DCDF836A7306}", 1) |
| extendedrestrictions | Agregar una o varias restricciones extendidas a la derecha | entero y propiedades, consulte el ejemplo | Ejemplo: (extendedrestrictions:((type:400, mustunderstand:true,besteffort:false,data:Ah==),(type:401, mustunderstand:true,besteffort:false,data:Ah==))) Asume que es aplicable al derecho De reproducción si no se establece ningún otro derecho. |
| playenablers | Agregar uno o varios habilitadores de reproducción a la licencia | guid o grupo de guides | Ejemplo 1: playenablers:(786627D8-C2A6-44BE-8F88-08AE255B01A7) (permitir salidas desconocidas). Ejemplo 2: playenablers:(786627D8-C2A6-44BE-8F88-08AE255B01A7,5ABF0F0D-DC29-4B82-9982-FD8E57525BFC) (permitir salidas desconocidas y AirPlay). Consulte las solicitudes de incorporación de cambios para todos los habilitadores de reproducción. |
| Los parámetros siguientes son abreviados para determinadas combinaciones de restricciones y habilitadores de reproducción descritos anteriormente. | |||
| explicitacp | Establecer una restricción de control de ganancia automática y franja de color para vídeo analógico | entero 0,1,2,3 | Ejemplo: explicitacp:2 Equivalente a: avop(guid:C3FD11C6-F8B7-4D20-B008-1DB17D61F2DA,data:AgAAAA==) Consulte la sección 6.5.1 y 3.6.7.2 de LASR. Código del SDK del servidor: right.AddAnalogVideoOutputProtection(new ExplicitOutputProtection(new Guid("C3FD11C6-F8B7-4D20-B008-1DB17D61F2DA"), HeightBytes.Concat(WidthBytes).ToArray())) |
| maxres | Establecer una restricción de tamaño de descodificación de resolución máxima efectiva | entero x entero | Ejemplo: maxres:1920x1080 Equivalente a: dvop:(guid:9645E831-E01D-4FFF-8342-0A720E3E028F,data:AAAEOAAAB4A=) Consulte la sección 6.5 y 3.6.5.7.1 de LASR. Código del SDK del servidor: right.AddDigitalVideoOutputProtection(new ExplicitOutputProtection(new Guid("9645E831-E01D-4FFF-8342-0A720E3E028F"), BitConverter.GetBytes((int)value)) |
| allowunknownsd | Agregar un control de salida para la salida desconocida para la resolución restringida | falso, verdadero | Ejemplo: allowunknownsd:true Equivalente a: playenablers:(B621D91F-EDCC-4035-8D4B-DC71760D43E9) Consulte la sección 3.9.2 de LASR. Código del SDK del servidor: right.AddPlayEnabler(new PlayEnabler(new Guid("B621D91F-EDCC-4035-8D4B-DC71760D43E9"))) |
| allowunknownhd | Agregar un control de salida para la salida desconocida para cualquier resolución | falso, verdadero | Ejemplo: allowunknownhd:true Equivalente a: playenablers:(786627D8-C2A6-44BE-8F88-08AE255B01A7) Consulte la sección 3.9.1 de lasRS. Código del SDK del servidor: right.AddPlayEnabler(new PlayEnabler(new Guid("786627D8-C2A6-44BE-8F88-08AE255B01A7"))) |
| clientinfo | Característica de reflexión especial. Consulte esta página para obtener más detalles. | ||
| revocado | Simular la revocación de dispositivos para esta solicitud | falso, verdadero | Ejemplo: revoked:true |