2016-08-28 8 views
0

とコンテンツセキュリティポリシーを実装するマイコンテンツセキュリティポリシーは以下の通りです:はジキル

Content-Security-Policy: default-src 'self' http://fonts.googleapis.com http://ajax.googleapis.com; script-src 'self' http://fonts.googleapis.com http://ajax.googleapis.com; style-src 'self' http://fonts.googleapis.com; img-src 'self' ; font-src 'self' http://fonts.googleapis.com; connect-src 'self' http://ajax.googleapis.com; media-src 'self' ; object-src 'self' ; child-src 'self' ; frame-ancestors 'self' ; form-action 'none' ; sandbox allow-same-origin allow-scripts allow-pointer-lock; reflected-xss block;

あなたが部分的にmeta http-equivでそれを実装することができますが、あなたが私が理解から、先祖やサンドボックスをフレーム許可していません。 httpヘッダーを送信する必要があります。しかし、私のウェブホストはHTMLファイルからのPHPコマンドを許可していないので、とにかくそれを避けたいと思います。

Jekyllをジェネレータとして使用しているときに、このポリシーを実装するためのオプションは何ですか?

答えて

0

疑問に思ったように聞こえますが、答えが気に入らないかもしれません。 Jekyllは静的なHTML生成ツールです。インラインHTMLヘッダーを含むHTMLを生成する以外に何もすることはできません。

Webサーバー(nginx、apache、passenger standaloneなど)にアクセスできないため、サーバー構成ファイルからヘッダーを書き込めない場合は、あなたのJekyllテンプレートに適切なヘッダーを生成します。

ジキルレイアウトファイル(おそらく_layouts/default.html)にhttp-equivを正しく設定すると、カスタムヘッダーを設定できるはずです。あなたのhttp-equiv CSPのメタタグがデフォルトのレイアウトでジキルによって生成されたすべてのHTMLページに含まれる役立つはず、このファイルに以下を追加:

<meta http-equiv="X-Content-Security-Policy" content="default-src 'self' http://fonts.googleapis.com http://ajax.googleapis.com; script-src 'self' http://fonts.googleapis.com http://ajax.googleapis.com; style-src 'self' http://fonts.googleapis.com; img-src 'self' ; font-src 'self' http://fonts.googleapis.com; connect-src 'self' http://ajax.googleapis.com; media-src 'self' ; object-src 'self' ; child-src 'self' ; frame-ancestors 'self' ; form-action 'none' ; sandbox allow-same-origin allow-scripts allow-pointer-lock; reflected-xss block;" /> 

PS - 私は、これはあなたが言及したframe-ancestors作品を扱っていません実現しています。残念ながら私はあなたのウェブホストプロバイダと協力してCSPヘッダーをあなたのサイト設定に何らかの形で挿入できるかどうかを知るために答えを出すだけではわかりません。

1

ローカルでテストするには、Jekyllでカスタムヘッダーを指定できます。

# Custom headers 
webrick: 
    headers: 
    Content-Security-Policy: default-src 'none'; script-src 'self'; connect-src 'self'; img-src 'self'; style-src 'self'; 
    My-Other-Header: My-Other-Value 

ソース:https://jekyllrb.com/docs/configuration/#custom-webrick-headers

あなた _config.ymlアドオンで