X-Content-Type-Options

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ées ou et suivies. 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.

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-Options
Non-standard
Chrome Support complet 64
Support complet 64
Support partiel 1
Notes
Notes Not supported for stylesheets.
Edge Support complet OuiFirefox Support complet 50IE Support complet 8Opera Support complet OuiSafari Aucun support NonWebView 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 Aucun support NonSamsung 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
Aucun support  
Aucun support
Fonctionnalité non-standard. Celle-ci peut être incorrectement supportée par les autres navigateurs.
Fonctionnalité non-standard. Celle-ci peut être incorrectement supportée par les autres navigateurs.
Voir les notes d'implémentation.
Voir les notes d'implémentation.

Voir aussi