Flash Player 10.1 et les versions ultérieures, Adobe AIR 1.5 et les versions ultérieures
La classe DRMManager permet de gérer les vouchers et les sessions du serveur des droits multimédias dans les applications.
Gestion des vouchers (AIR uniquement)
Lorsqu’un utilisateur lit un contenu protégé, le moteur d’exécution obtient et place en mémoire cache la licence requise pour visionner le contenu. Si l’application enregistre le fichier localement et si la licence autorise la lecture hors connexion, l’utilisateur peut visionner le contenu dans l’application AIR. La lecture locale hors connexion est possible même si la connexion au serveur de droits multimédias n’est pas disponible. Vous pouvez pré-placer en mémoire cache le voucher par le biais de DRMManager et de la méthode
preloadEmbeddedMetadata()
de NetStream. Il est inutile que l’application obtienne la licence nécessaire au visionnement du contenu. Par exemple, votre application peut télécharger le fichier multimédia, puis obtenir le voucher pendant que l’utilisateur est encore en ligne.
Pour précharger un voucher, utilisez la méthode NetStream
preloadEmbeddedMetadata()
pour obtenir un objet DRMContentData. L’objet DRMContentData contient l’URL et le domaine du serveur de gestion des droits d’auteur pouvant fournir la licence et indique si l’authentification de l’utilisateur est requise. Avec ces informations, vous pouvez appeler la méthode DRMManager
loadVoucher()
pour obtenir le voucher et le mettre en cache. La procédure de préchargement des vouchers est décrite plus en détails à la section
Préchargement de vouchers pour une lecture hors connexion
.
Gestion des sessions
Vous pouvez également utiliser DRMManager pour authentifier l’utilisateur auprès d’un serveur de gestion des droits d’auteur et pour gérer les sessions persistantes.
Appelez la méthode DRMManager
authenticate()
pour établir une session auprès du serveur de gestion des droits d’auteur. Une fois l’authentification réussie, le DRMManager distribue un objet DRMAuthenticationCompleteEvent qui contient un jeton de session. Vous pouvez enregistrer ce jeton pour établir les sessions futures de sorte que l’utilisateur n’ait plus besoin de fournir les informations d’identification de son compte. Transmettez le jeton à la méthode
setAuthenticationToken()
pour établir une nouvelle session authentifiée. (Les paramètres du serveur générés par le jeton déterminent la date d’expiration du jeton et d’autres attributs. Le code de l’application AIR ne doit pas interpréter la structure de données du jeton, car cette structure est susceptible de changer lors de futures mises à jour d’AIR.)
Il est possible de transférer les jetons d’authentification à d’autres ordinateurs. Pour les protéger, vous pouvez les stocker dans le magasin local chiffré d’AIR. Pour plus d’informations, voir
Stockage local chiffré
.
Evénements DRMStatus
Le DRMManager distribue un objet DRMStatusEvent lorsqu’un appel de la méthode
loadVoucher()
aboutit.
Si un voucher a été obtenu, la propriété
detail
(AIR uniquement) de l’objet d’événement prend la valeur : « DRM.voucherObtained » et la propriété
voucher
contient l’objet DRMVoucher.
Si le voucher n’a pas été obtenu, la propriété
detail
(AIR uniquement) conserve la valeur : « DRM.voucherObtained », mais la propriété
voucher
est
null
. Il est impossible d’obtenir un voucher si, par exemple, vous définissez LoadVoucherSetting sur
localOnly
et qu’aucun voucher n’a été placé dans la mémoire cache locale.
Si l’appel de la méthode
loadVoucher()
échoue, en raison d’une erreur de communication ou d’authentification, par exemple, le DRMManager distribue alors un objet DRMErrorEvent ou DRMAuthenticationErrorEvent.
Evénements DRMAuthenticationComplete
Le DRMManager distribue un objet DRMAuthenticationCompleteEvent lorsque l’utilisateur est bien authentifié via un appel à la méthode
authenticate()
.
L’objet DRMAuthenticationCompleteEvent contient un jeton réutilisable qui peut servir à maintenir l’authentification de l’utilisateur dans plusieurs sessions de l’application. Transmettez ce jeton à la méthode
setAuthenticationToken()
du DRMManager pour rétablir la session. (Le créateur du jeton définit les attributs du jeton, notamment sa date d’expiration. Adobe ne fournit pas d’API capable d’examiner les attributs du jeton.)
Evénements DRMAuthenticationError
Le DRMManager distribue un objet DRMAuthenticationErrorEvent lorsqu’un utilisateur n’a pas pu s’authentifier via un appel aux méthodes
authenticate()
ou
setAuthenticationToken()
.
|
|
|