22

以下のコンテンツ セキュリティ ポリシー (CSP) スニペットをコードのどこに適用すればよいかわかりません。

Content-Security-Policy: script-src 'self' https://apis.google.com

それはHTMLにあるべきですか?

以下のコード スニペットのように、JavaScript で実装するのが最適でしょうか?

var policy = "default-src 'self'";
http.createServer(function (req, res) {
    res.writeHead(200, {
        'Content-Security-Policy': policy
    });
});
4

3 に答える 3

26

HTML ではなく、HTTP ヘッダーに設定するだけです。これは、静的サーバーを使用した Express 4 の実例です。

var express = require('express');
var app = express();


app.use(function(req, res, next) {
    res.setHeader("Content-Security-Policy", "script-src 'self' https://apis.google.com");
    return next();
});

app.use(express.static(__dirname + '/'));

app.listen(process.env.PORT || 3000);

CSP の詳細については、次の優れた記事をご覧ください: http://www.html5rocks.com/en/tutorials/security/content-security-policy/

それが役立つことを願っています!

于 2014-05-29T15:51:30.577 に答える