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