Charger une bibliothèque depuis un CDN est pratique, mais cela introduit une dépendance externe. Subresource Integrity (SRI) permet au navigateur de vérifier que le fichier reçu correspond exactement à l’empreinte attendue.
Le principe
Vous calculez une empreinte cryptographique d’une version précise du fichier et l’ajoutez à l’attribut integrity de la balise concernée. Si le contenu téléchargé ne produit pas la même empreinte, le navigateur refuse de l’utiliser.
Le générateur de hash SRI permet de préparer cette valeur localement.
SRI convient aux ressources stables
Le mécanisme fonctionne bien pour une ressource versionnée et immuable. Si le fournisseur modifie le fichier derrière la même URL, l’empreinte change et la ressource sera bloquée. C’est justement le comportement recherché pour l’intégrité, mais il faut l’intégrer au processus de mise à jour.