X-Frame-Options (header)

Article publié, le et modifié le
1 minute(s) de lecture

Cet article contient 193 mots.
Source brute de l'article : MD

Définition

X-Frame-Options est une entête HTTP qui permet de contrôler comment les sites internet externes peuvent “encapsuler” le vôtre.

L’usage de cette entête est recommandé, d’autant qu’elle est simple à gérer et son bénéfice de sécurité est important.

Cette entête remplace l’historique entête Frame-Options, et est elle-même remplacée par la directive frame-ancestors de l’entête CSP !

Elle fait partie des entêtes de base à générer pour protéger son site web, au même titre que l’usage de HSTS, et des autres entêtes X-*-Options, telles que X-Content-Type, X-XSS-Protections,…

Options

3 options sont permises :

  • DENY : interdit aux autres de mettre votre site dans une iframe. C’est l’option recommandée !
  • SAMEORIGIN : permet d'être mis dans une frame, à-partir de votre propre site.
  • ALLOW-FROM uri : Cette option est dépréciée - il est clairement recommandée de ne plus l’utiliser au profit de la directive frame-ancestors gérée par l’entête CSP.

Documentations

Exemples

X-Frame-Options: DENY

nginx

add_header X-Frame-Options "DENY" always;

relayd

Et, oui, malheureusement, httpd ne peut pas gérer les entêtes, ce sera son binôme relayd(8) que l’on utilisera !

match response header set "X-Frame-Options" value "DENY"