Content Security Policy (CSP)をgrunt-contrib-connectで設定するのにはどうしたら良いかという話。
やり方としては、grunt-contrib-connect タスクで CORS を有効にする - メモログと同様、middlewareのオプションに追加する。
1 | middleware: function (connect, options) { |
こんな感じ。上記では、ポリシーのテストを目的にしているので、「Content-Security-Policy-Report-Only」を使用しています。また、report-onlyモードではreport-uriの設定が必須なので、それを追加しています。report-uriにはUsing CSP violation reports - Security | MDNによると、CSPにひっかかった場合にその内容をreport-uriにPOSTで送ってくれます。
これで、たとえばjasmineのテストをするときにCSPを有効にしてテストすることで違反した場合にレポート送らせることができるなと思ったのですが、まだそこまでは試していません。
というメモ。