Retour au Blog
Plateforme

Widevine et navigateurs headless : limites DRM à vérifier

Distinguez écran, CDM, robustesse et licence avec une matrice reproductible pour diagnostiquer le DRM automatisé.

BotBrowser Team

Documentation

Vous voulez la documentation structurée pour Plateforme ?

Cet article fait partie de la bibliothèque éditoriale. Pour les étapes de configuration, la référence et les mises à jour continues, passez directement à la section docs.

BotBrowser peut rejouer un test DRM autorisé dans un profil déclaré, mais il ne fournit pas de CDM propriétaire, n’accorde pas de droit et ne transforme pas headless en sortie matériellement protégée. Cette page complète la disponibilité du CDM Widevine dans les navigateurs automatisés : cette dernière teste le premier appel EME, tandis qu’ici l’écran, le module, la robustesse et la licence sont séparés.

Quatre points séparent négociation du module, robustesse, sortie protégée et licence

Résumé

« Le DRM échoue en headless » ne donne pas la cause. L’échec peut arriver avant le CDM, avec une robustesse logicielle seulement, sur une sortie restreinte ou lors d’un refus du serveur de licence. Notez build, profil, mode d’affichage et code HTTP.

Sommaire

Quatre limites

requestMediaKeySystemAccess() peut refuser avant tout contact réseau : utilisez la sonde de disponibilité Widevine et appelez ce résultat négociation du module. Une réponse positive ne prouve pas HW_SECURE_ALL, car un poste ou écran virtuel peut ne fournir que le logiciel. La lecture peut aussi basculer vers output-restricted. Enfin, un challenge valide peut être refusé pour compte, région, HTTP ou entitlement. Conservez les codes, jamais les tokens ni messages opaques.

Matrice reproductible

Gardez le même fixture HTTPS et un profil neuf par ligne :

LigneVariationObservationInterprétation
Aheadless, requête par défautsuccès ou NotSupportedErrornégociation du module
Bheaded, même profilcomparaison avec Amode d’affichage
CSW_SECURE_DECODE puis HW_SECURE_ALLrobustesse acceptéeniveau négocié
Dchallenge sur un service de test autoriséHTTP et code fournisseurdécision de licence
Esortie virtuellerestriction ou solution de repliprotection de sortie

Archivez un JSON comme {"build":"Chrome 155.0.8059.80","mode":"headless","profile":"fresh-temporary","access":"supported","licenseStatus":null}. Il s’agit d’une mesure, pas d’une garantie universelle.

Lire les échecs

Si tout refuse, comparez binaire et arguments. Si le logiciel passe mais pas le matériel, documentez la limite ou l’exigence du fournisseur. Si EME passe et la licence échoue, vérifiez HTTP, compte de test et région. Si la lecture s’arrête, notez keystatuseschange et la sortie.

Ne copiez pas un CDM et ne désactivez pas la sécurité. Pour la cohérence des modes, lisez cohérence de profil headless/headed ; pour le paramétrage, configuration Widevine BotBrowser.

Ce que contrôle BotBrowser

Avec une build et un entitlement compatibles, BotBrowser peut conserver le profil et la politique --bot-widevine par contexte. Il ne fabrique pas de CDM, ne change pas une décision de compte, ne garantit pas le matériel sécurisé et ne prouve pas que chaque titre fonctionne partout.

Conclusion

Headless est un mode de présentation. Séparez disponibilité, robustesse, sortie et licence, rejouez le fixture après chaque mise à jour et gardez la mesure.

Sources publiques

#Widevine#DRM#headless#Automatisation#Confidentialité

Faites passer BotBrowser de la recherche à la production

Utilisez ces guides pour comprendre le modèle, puis passez à la validation multi-plateforme, aux contextes isolés et au déploiement navigateur prêt pour l'échelle.