web-dev-qa-db-fra.com

Dois-je utiliser l'attribut 'noreferrer' sur les liens de mon site Web (pour l'ouvrir dans une nouvelle fenêtre) comme mesure de sécurité?

Il existe de nombreux sites sur Internet qui vous recommandent d'ajouter le noopener noreferrer attribue à votre lien une mesure de sécurité. Ceci afin d'éviter que des scripts malveillants d'autres domaines prennent le contrôle de votre fenêtre (pour un lien avec target="_blank").

Il y a même une règle eslint pour s'en assurer:

https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-target-blank.md `

https://mathiasbynens.github.io/rel-noopener/

[~ # ~] question [~ # ~]

J'obtiens la partie noopener. Ca a du sens. Mais ai-je vraiment besoin du noreferrer pour être sûr?

2
cbdeveloper

Vous avez seulement besoin d'utiliser l'un ou l'autre. De Outils Google pour les développeurs Web - Les liens vers des destinations d'origine croisée ne sont pas sûrs :

  • rel="noopener" Empêche la nouvelle page d'accéder à la propriété window.opener Et garantit qu'elle s'exécute dans un processus distinct.
  • L'attribut rel="noreferrer "A le même effet, mais empêche également l'envoi de l'en-tête Referer à la nouvelle page.

Il n'est donc pas nécessaire d'utiliser les deux. L'un ou l'autre empêchera le problème de sécurité de lui-même.

3