Bonne pratique
Le HSTS permet d’indiquer à n’importe quel navigateur, via un header de réponse HTTP gardé en cache que le domaine doit exclusivement être contacté en HTTPS.
Cela permet aux requêtes suivantes, émises sur le même domaine, d’être exclusivement contactées avec le protocole HTTPS, ce qui évite une multitude de redirections 301. Néanmoins, le premier appel exige une réponse (potentiellement non sécurisé) HTTP avec un header STS (Strict-Transport-Security). Pour pallier ce problème, et obliger les navigateurs à contacter l’intégralité du domaine en HTTPS, il est possible, en plus d’activer le HSTS, de s’enregistrer dans une liste statique mise à jour sur tous les navigateurs récents : https://hstspreload.org.
Il est important de noter que l’enregistrement de son domaine sur htstpreload.org est rapide et concerne l’intégralité du domaine, (sous-domaines inclus). Avant d’effectuer cet enregistrement, qui est relativement lent à supprimer, veillez qu’aucun de vos sous-domaines ne soient perturbés par la mise en place du HTTPS.
Le "Référentiel d'écoconception web (REW)" est publié par GreenIT.fr dans le cadre des travaux du Collectif conception numérique responsable selon les termes de la licence Creative Commons Attribution.
Next.js facilite l’implémentation de HSTS en permettant de configurer les headers HTTP de manière centralisée. Grâce à l'API de configuration des headers, vous pouvez définir le header STS dans le fichier next.config.js
, garantissant que toutes les requêtes suivent automatiquement cette directive.
Pour intégrer la HSTS Preload List, Next.js peut être configuré pour inclure facilement le header Strict-Transport-Security
avec l'option preload
. Cela améliore les performances en évitant les redirections 301, tout en accroissant la sécurité en forçant le protocole HTTPS dès le premier appel.
Règle de validation
Le nombre de non activations de HSTS doit être inférieur ou égal à 0
Ressources économisées