X-Content-Type-Options

Cette traduction est incomplète. Aidez-nous à traduire cet article depuis l’anglais

L'entête X-Content-Type-Options est un marqueur utilisé par le serveur pour indiquer que les types MIME annoncés dans les en-têtes Content-Type ne doivent pas être modifiés ou et suivis. Cela permet de se détacher du sniffing de type MIME, ou, en d'autres termes, c'est une façon de dire que les webmasters savaient ce qu'ils faisaient.

Cet en-tête a été introduit par Microsoft dans IE 8 comme un moyen pour les webmasters de bloquer le reniflement de contenu qui se passait et pouvait transformer les types MIME non exécutables en types MIME exécutables. Depuis, d'autres navigateurs l'ont introduit, même si leurs algorithmes de reniflage MIME étaient moins agressifs.

À partir de Firefox 72, la désactivation du reniflement MIME est également appliqué aux documents de premier niveau si un Content-type est fourni. Les pages web HTML qui sont servies avec un type MIME différent de text/html, peuvent alors être juste téléchargées au lieu d'êtres rendues (interprétées et affichées par le navigateur). Assurez vous de valoriser correctement ces 2 en-têtes.

Les testeurs de sécurité du site s'attendent généralement à ce que cet en-tête soit défini.

Note: X-Content-Type-Options ne s'appliquent qu'au blocage des demandes par nosniff pour les destinations de demandes de  "script" et "style". Il permet également le blocage en lecture croisé (CORB) pour les fichiers HTML, TXT, JSON, et XML (à l'exception des images SVG image/svg+xml).

Header type Response header
Forbidden header name Non

Syntaxe

X-Content-Type-Options: nosniff

Directives

nosniff

Bloque une requête si la destination de la requête est de type
  • "style" et le MIME n'est pas de type text/css, ou
  • "script" et le MIME n'est pas de type JavaScript MIME type
Permet le blocage de la lecture croisée pour les types MIME
  • text/html
  • text/plain
  • text/json, application/json ou tout autre type avec une extension JSON: */*+json
  • text/xml, application/xml ou tout autre type avec une extension XML: */*+xml (hors image/svg+xml)

Caractéristiques

Caractéristique Statut Commentaire
Fetch
La définition de 'X-Content-Type-Options definition' dans cette spécification.
Standard évolutif Définition initiale

Browser compatibility

Update compatibility data on GitHub
OrdinateurMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariWebview AndroidChrome pour AndroidFirefox pour AndroidOpera pour AndroidSafari sur iOSSamsung Internet
X-Content-Type-OptionsChrome Support complet 64
Support complet 64
Support partiel 1
Notes
Notes Not supported for stylesheets.
Edge Support complet 12Firefox Support complet 50IE Support complet 8Opera Support complet OuiSafari Support complet 11WebView Android Support complet 64
Support complet 64
Support partiel Partiel
Notes
Notes Not supported for stylesheets.
Chrome Android Support complet 64
Support complet 64
Support partiel Partiel
Notes
Notes Not supported for stylesheets.
Firefox Android Support complet 50Opera Android Support complet OuiSafari iOS Support complet 11Samsung Internet Android Support complet 9.0
Support complet 9.0
Support partiel Partiel
Notes
Notes Not supported for stylesheets.

Légende

Support complet  
Support complet
Voir les notes d'implémentation.
Voir les notes d'implémentation.

Voir aussi