CSP: plugin-types

HTTP の Content-Security-Policy (CSP) の plugin-types ディレクティブは、文書に埋め込むことができるプラグインのセットを、読み込むことができるリソースの種類を制限することによって制限します。

<embed>, <object>, <applet> の各要素のインスタンス化は、次の場合に失敗します。

  • 要素が妥当な MIME 型を宣言していなかった場合
  • 宣言された型が plugin-types ディレクティブで指定されたもののいずれにも一致しなかった場合
  • 読み込まれたリソースが宣言された型に一致しなかった場合
CSP バージョン 2
ディレクティブ種別 文書ディレクティブ
default-src による代替 なし。これを設定しないと何も許可されない。

構文

1つ以上の MIME 型plugin-types ポリシーに設定することができます。

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

仕様書

仕様書 状態 備考
Content Security Policy Level 3
plugin-types の定義
草案 変更なし
Content Security Policy Level 2
plugin-types の定義
勧告 初回定義

ブラウザーの互換性

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
plugin-typesChrome 完全対応 40Edge 完全対応 15Firefox 未対応 なし
補足
未対応 なし
補足
補足 See bug 1045899.
IE 未対応 なしOpera 完全対応 27Safari 完全対応 10WebView Android 完全対応 ありChrome Android 完全対応 ありFirefox Android 未対応 なしOpera Android ? Safari iOS 完全対応 9.3Samsung Internet Android 完全対応 あり

凡例

完全対応  
完全対応
未対応  
未対応
実装状況不明  
実装状況不明
実装ノートを参照してください。
実装ノートを参照してください。

関連情報