CSP: plugin-types

La directive HTTP Content-Security-Policy (CSP) plugin-types restreint l'ensemble des greffons pouvant être intégrés dans un document en limitant les types de ressources pouvant être chargées.

L'instanciation d'éléments <embed>, <object> ou <applet> échouera si :

  • l'élément à charger ne déclarer pas de type MIME valide,
  • le type déclaré ne correspond pas à un des types spécifiés dans la directive plugin-types,
  • les ressources demandées ne correspondent pas au type déclaré.
Version de CSP 2
Type de directive Document directive
default-src par défaut Non, ne pas la définir autorise toutes les ressources

Syntaxe

Un ou plusieurs types MIME peuvent être autorisées pour cette directive :

Content-Security-Policy: plugin-types <type>/<subtype>;
Content-Security-Policy: plugin-types <type>/<subtype> <type>/<subtype>;
<type>/<subtype>

Un type MIME valide.

Exemples

Interdire les greffons

Pour intedire tous les greffons, la directive object-src doit être définie à 'none'. La directive plugin-types n'est utilisée que si vous autorisez au préalable les greffons avec object-src.

<meta http-equiv="Content-Security-Policy" content="object-src 'none'">

Autoriser le contenu Flash

Soit cet en-tête CSP :

Content-Security-Policy: plugin-types application/x-shockwave-flash

Cet objet Flash sera autorisé et se chargera (dans la mesure où le navigateur gère Flash) :

<object data="https://example.com/flash" type="application/x-shockwave-flash"></object>

Autoriser les applets Java

Pour charger une <applet>, vous devez spécifier la valeur application/x-java-applet :

Content-Security-Policy: plugin-types application/x-java-applet

Spécifications

Spécification Statut Commentaire
Content Security Policy Level 3
La définition de 'plugin-types' dans cette spécification.
Version de travail Inchangé.
Content Security Policy Level 2
La définition de 'plugin-types' dans cette spécification.
Recommendation Définition initiale.

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi