Permissions-Policy の許可リストの書き方の誤り

許可リストにオリジンを引用符なしで書いた geolocation と、none と書いた camera、正しく書いた microphone を並べた例です。仕様に合わない 2 つが読み飛ばされる点を警告します。

入力

レスポンスヘッダー

Permissions-Policy: geolocation=https://example.com, camera=none, microphone=(self "https://a.example")

ヘッダーを受け取った通信

HTTPS(暗号化された通信)

結果

エラー 0 件・警告 2 件・情報 3 件

指摘(エラー・警告・情報)

  • 情報 Strict-Transport-Security Strict-Transport-Security がありません。HTTPS で配信しているサイトが、ブラウザに HTTPS だけで接続させたいときに送るヘッダーです(RFC 6797)。必要かどうかはサイトの方針で決めます。
  • 情報 Referrer-Policy Referrer-Policy がありません。リファラーの扱いはブラウザの既定に任されます(W3C Referrer Policy 8.1)。方針を固定したいときに指定します。
  • 警告 Permissions-Policy geolocation の許可リスト「https://example.com」は *・self・かっこ付きの一覧のどれでもありません。この形のメンバーは読み飛ばされます(Permissions Policy 5.2)。オリジンは geolocation=("https://example.com") のようにかっこと二重引用符で書き、無効にするときは geolocation=() と書きます。
  • 警告 Permissions-Policy camera の許可リスト「none」は *・self・かっこ付きの一覧のどれでもありません。この形のメンバーは読み飛ばされます(Permissions Policy 5.2)。オリジンは camera=("https://example.com") のようにかっこと二重引用符で書き、無効にするときは camera=() と書きます。
  • 情報 Permissions-Policy 機能の名前(geolocation など)が有効かどうかは判定していません。ブラウザは知らない機能名を無視します(Permissions Policy 5.2)。名前の綴りは各ブラウザの一覧で確認してください。
読み取ったヘッダー1 行
指摘の件数エラー 0 件・警告 2 件・情報 3 件
判定の範囲Strict-Transport-Security・Referrer-Policy・Permissions-Policy の有無と構文だけを機械的に判定します。サイトの安全性は判定せず、指摘がなくても安全とは限りません

ヘッダーごとの解釈

ヘッダーごとの解釈
ヘッダー項目値解釈(構文のみ)
Strict-Transport-Security-(ヘッダーなし)このヘッダーはありません
Referrer-Policy-(ヘッダーなし)このヘッダーはありません
Permissions-Policygeolocationhttps://example.com許可リストの形でない(無視される)
Permissions-Policycameranone許可リストの形でない(無視される)
Permissions-Policymicrophone(self "https://a.example")次に許可する: 自分のオリジン、https://a.example
Content-Security-Policy-(ヘッダーなし)このヘッダーはありません

検算(この結果になる理由)

W3C Permissions Policy 5.2 では、許可リストは *、self、引用符つき文字列、かっこ付きの一覧のどれかで、それ以外の形は読み飛ばされます。引用符なしのオリジンと none の 2 件が警告で、microphone は書式が正しいため指摘なしです。機能名を検証しない情報と、2 つのヘッダーがない情報で情報は 3 件です。

判定の根拠は仕様と根拠に、仕様の出典とともにまとめています。自分の入力で試すにはツールをお使いください。

このツールの制約

ご利用にあたって

  • 結果は仕様にもとづく書式の点検で、サイトの安全性を保証するものではありません。「指摘なし」を「安全」と読み替えないでください。
  • 認証情報や内部のホスト名を含むヘッダーは、ダミーに置き換えて貼り付けてください。入力は保存・送信しませんが、画面共有などでは見えます。

ほかの入力例