HTTP参考手册
CSP
CSP: plugin-types
HTTP Content-Security-Policy
(CSP)plugin-types
指令通过限制可以加载的资源类型来限制可以嵌入到文档中的插件集。
一个实例<embed>
,<object>
或<applet>
元素会失败,如果:
- 要加载的元素不会声明有效的MIME类型,
- 声明的类型与
plugin-types
指令中的指定类型之一不匹配,
- 获取的资源与声明的类型不匹配。
CSP版本 |
2 |
---|---|
指令类型 |
Document指令 |
default-src fallback |
不可以。 |
句法
可以为plugin-types
策略设置一个或多个MIME类型:
Content-Security-Policy: plugin-types <type>/<subtype>;
Content-Security-Policy: plugin-types <type>/<subtype> <type>/<subtype>;
<type>/<subtype>有效的MIME类型。
示例
禁止插件
要禁止所有插件,object-src
应将该指令设置为'none'
禁止插件。plugin-types
指令仅用于完全允许插件的object-src
情况。
<meta http-equiv="Content-Security-Policy" content="object-src 'none'">
允许Flash内容
内容安全策略
Content-Security-Policy: plugin-types application/x-shockwave-flash
将允许加载Flash对象:
<object data="https://example.com/flash" type="application/x-shockwave-flash"></object>
允许Java小程序
加载<applet>
你必须指定application/x-java-applet
:
Content-Security-Policy: plugin-types application/x-java-applet
规范
规范 |
状态 |
评论 |
---|---|---|
内容安全策略级别3该规范中'插件类型'的定义。 |
编辑草稿 |
没有变化。 |
内容安全策略级别2该规范中'插件类型'的定义。 |
建议 |
初始定义。 |
浏览器兼容性
特征 |
Chrome |
Firefox |
Edge |
Internet Explorer |
Opera |
Safari |
---|---|---|---|---|---|---|
基本支持 |
40 |
(No)1 |
(No) |
(No) |
27 |
10 |
特征 |
Android |
Chrome for Android |
Edge mobile |
Firefox for Android |
IE mobile |
Opera Android |
iOS Safari |
---|---|---|---|---|---|---|---|
基本支持 |
? |
(Yes) |
(No) |
(No) |
(No) |
? |
9.3 |