Evernote Web Clipper 和内容安全策略
Evernote Web Clipper and Content Security Policy
我们目前正在向一个网站引入内容安全政策。首先插入 Content-Security-Policy-Report-Only
header 以获得有关影响的一些反馈。很快我们发现 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 header 才能不阻止 Evernote Web Clipper 插件? blocked-uri
似乎在末尾包含一个 user-specific id,这使得它变得非常困难。
你说得对,被阻止的 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
我们目前正在向一个网站引入内容安全政策。首先插入 Content-Security-Policy-Report-Only
header 以获得有关影响的一些反馈。很快我们发现 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 header 才能不阻止 Evernote Web Clipper 插件? blocked-uri
似乎在末尾包含一个 user-specific id,这使得它变得非常困难。
你说得对,被阻止的 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