我们目前正在向网站介绍内容安全政策。首先插入Content-Security-Policy-Report-Only
标题以获得有关影响的一些反馈。很快我们发现Safari浏览器中的Evernote Web Clipper插件违反了CSP指令,因为它似乎在页面中注入了一些代码。
我们在CSP报告中得到了这个:
{"csp-report":
{
"document-uri":"http://example.com/index.html",
"violated-directive":"default-src 'self'",
"original-policy":"default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; report-uri http://example.com/report.html",
"blocked-uri":"safari-extension://com.evernote.safari.clipper-uahs7eh2ja",
"source-file":"http://example.com/js/jquery.js",
"line-number":2
}
}
我们如何修改CSP标头以便不阻止Evernote Web Clipper插件? blocked-uri
似乎在最后包含一个特定于用户的id,这使得它非常困难。
答案 0 :(得分:0)
你是对的,被阻止的uri的最后一点确实因计算机而异,你不能使用通配符将它列入白名单。解锁Web Clipper的唯一方法是通过将safari-extension://*
放入default-src
来取消阻止所有Safari扩展,因此您的策略将如下所示
default-src 'self' safari-extension://*; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; report-uri http://example.com/report.html