Utilice la clase DRMManager para administrar licencias y sesiones del servidor de derechos de medios en aplicaciones.
Administración de licencias (solo AIR)
Cada vez que un usuario reproduce contenido protegido, el motor de ejecución obtiene la licencia necesaria para ver el contenido y la guarda en caché. Si la aplicación guarda el archivo localmente, y la licencia permite la reproducción sin conexión, el usuario puede ver el contenido en la aplicación de AIR. Esta reproducción local sin conexión se produce incluso si no hay disponible ninguna conexión con el servidor de derechos digitales. Con el método DRMManager y NetStream
preloadEmbeddedMetadata()
, puede guardar en caché previamente la licencia. La aplicación no deberá obtener la licencia necesaria para ver el contenido. Por ejemplo, la aplicación puede descargar el archivo de medios y posteriormente obtener la licencia mientras que el usuario esté en línea.
Para precargar una licencia, utilice el método
preloadEmbeddedMetadata()
de NetStream para obtener un objeto DRMContentData. El objeto DRMContentData contiene la dirección URL y el dominio del servidor de derechos de medios que puede proporcionar la licencia y describe si se requiere la autenticación del usuario. Con esta información, puede llamar al método
loadVoucher()
de DRMManager para obtener y almacenar en caché la licencia. El flujo de trabajo para precarga de licencias se describe más detalladamente en
Precarga de licencias para reproducción sin conexión
.
Administración de sesión
También puede utilizar DRMManager para autenticar al usuario en un servidor de derechos de medios y para administrar sesiones persistentes.
Llame al método
authenticate()
de DRMManager para establecer una sesión con el servidor de derechos de medios. Una vez que la autenticación se lleva a cabo correctamente, DRMManager distribuye un objeto DRMAuthenticationCompleteEvent. Este objeto contiene un token de sesión. Este token se puede guardar para establecer futuras sesiones de modo que el usuario no tenga que proporcionar sus credenciales de cuenta. Transmita el símbolo al método
setAuthenticationToken()
para establecer una nueva sesión autenticada. (La configuración del servidor que generó el token determina su caducidad y otros atributos. El código de la aplicación de AIR no debe interpretar la estructura de datos del token, ya que esta estructura pueda cambiar con futuras actualizaciones de AIR.)
Los token de autenticación se pueden transferir a otros equipos. Para proteger los token, puede almacenarlos en el almacén local cifrado de AIR. Consulte
Almacenamiento local cifrado
para obtener más información.
Eventos DRMStatus
DRMManager distribuye un objeto DRMStatusEvent cuando la llamada al método
loadVoucher()
se completa correctamente.
Si se obtiene una licencia, la propiedad
detail
(solo AIR) del objeto de evento tendrá el valor: "DRM.voucherObtained" y la propiedad
voucher
contendrá el objeto DRMVoucher.
Si no se obtiene ninguna licencia, la propiedad
detail
(solo AIR) aún tendrá el valor: "DRM.voucherObtained"; sin embargo, la propiedad
voucher
será
null
. No se puede obtener una licencia si, por ejemplo, se utiliza LoadVoucherSetting de
localOnly
y no existen ninguna licencia almacenada en la caché local.
Si la llamada a
loadVoucher()
no se realiza correctamente, quizá debido a un error de comunicación o autenticación, DRMManager distribuye un objeto DRMErrorEvent o un objeto DRMAuthenticationErrorEvent.
Eventos DRMAuthenticationComplete
DRMManager distribuye un objeto DRMAuthenticationCompleteEvent cuando un usuario se autentica correctamente mediante una llamada al método
authenticate()
.
El objeto DRMAuthenticationCompleteEvent contiene un token reutilizable que se puede usar para mantener la autenticación del usuario a través de sesiones de la aplicación. Transmita este token al método
setAuthenticationToken()
de DRMManager para restablecer la sesión. (El creador del token define sus atributos, como la caducidad. Adobe no proporciona ninguna API para examinar los atributos del token.)
Eventos DRMAuthenticationError
DRMManager distribuye un objeto DRMAuthenticationErrorEvent cuando un usuario no se puede autenticar correctamente mediante una llamada a los métodos
authenticate()
o
setAuthenticationToken()
.
|
|
|