プリセット:
high impact
high impact
high impact
high impact
high impact
high impact
high impact
high impact
high impact
機能の説明
Permissions-Policy HTTP ヘッダーは、ページ — とそこに埋め込むすべての iframe — が、どの強力な Web 機能の使用を許されているかをブラウザーに伝えます。カメラ、マイク、位置情報、センサー、USB、画面共有:デフォルトではこれらのそれぞれが自オリジンに対して利用可能な状態にあり、スクリプトが要求するのを待っています。
このツールは、そのヘッダーを手書き文字列から構造化ディレクティブエディターに変えます。各ディレクティブカードが 1 つの機能を指定します — 既知の機能にはプライバシー影響バッジ(高 / 中 / 低)と、その機能が何をするかの注記が付きます — そして許可リストを選びます:どこでも許可(*)、同一オリジンのみ(self)、完全無効(())、またはカスタムオリジンリスト。ヘッダーはコントロールの脇でライブに組み上がります。既存のヘッダーを貼り付けて読み込み、編集することもできます。
使い方
- プリセットから始める — All deny(カタログ内の全機能を無効化)、Camera self(
camera=(self))、Fullscreen *(fullscreen=*)。 - ディレクティブカードを編集する — 機能名を入力し、許可リスト(
Off/Self/All/Origins)を選び、Originsの場合はスペース区切りのオリジンリストを指定します。ディレクティブの追加・削除は自由に行えます。 - 既存のヘッダーを貼り付ける — インポートパネルを展開し、現在の
Permissions-Policy値を貼り付けて Parse & load すると、エディターに読み込まれます(ヘッダー名のプレフィックスと引用符付きオリジンは自動処理され、不正な入力は報告されます)。 - コピーまたはダウンロード — サーバー / CDN 設定用にヘッダーをコピーするか、
permissions-policy.txtとしてダウンロードします。 - 設定を共有 — ディレクティブリスト全体がページ URL にエンコードされます。アドレスをコピーすれば、正確なポリシーをそのまま渡せます。
例
これらの API を一切必要としないサイト向けの厳格なデフォルト:
camera=(), display-capture=(), geolocation=(), hid=(), idle-detection=(),
microphone=(), serial=(), usb=(), xr-spatial-tracking=()
カメラとマイクを、そのフレーム内でのみ必要とする動画パートナーを埋め込む場合:
camera=(https://partner.example.com), geolocation=(), microphone=(https://partner.example.com)
フルスクリーンとペイメントだけ自分用に残し、それ以外はすべてロック:
fullscreen=(self), payment=(self)
補足事項
- ライブ検証 — 重複ディレクティブ(ヘッダーでは最後の 1 つだけが生き残ります)、機密三種(
camera、geolocation、microphone— すべてのオリジンがハードウェアのプロンプトを受け取ります)への*、そしてカタログ外の名前(タイプミス、またはブラウザーがまだ知らない機能 — 黙って無視されます)をフラグします。 - 使わない機能をなぜロックするのか? 無効化された機能は、侵害された依存パッケージや悪意のある広告スクリプトや注入された iframe によって再度有効化できません。さらにフィンガープリンティング表面を縮めます — センサー API とバッテリー API は古典的なトラッキング経路です。
- 機能検出は引き続き動作します。 無効化された機能に対して
navigator.mediaDevicesを呼ぶスクリプトには、プロンプトではなく拒否された Promise が返ります —allow="camera"は、必要とする特定の iframe にだけ設定してください。 - これは CSP ではありません。 Content-Security-Policy はどんなコンテンツが読み込まれるかを制御し、Permissions-Policy はどんなハードウェア/API の使用を許すかを制御します。両方を送出してください。
- 100% クライアントサイド — ヘッダーはブラウザー内で組み立てられます。何もアップロードされません。
- 関連ツール: CSP Builder、Basic Auth Generator。