如何根据 koa 中的文件类型设置额外的内容安全策略?
How to setup extra content-security-policy based on file type in koa?
目标是为 svg 文件设置特殊规则,
server {
add_header Content-Security-Policy "default-src 'none'; child-src https://www.youtube.com; font-src 'self' https://fonts.gstatic.com; frame-ancestors 'none'; frame-src https://www.youtube.com; img-src 'self'; media-src 'self'; script-src 'self'; style-src 'self' https://fonts.googleapis.com";
location ~ \.svg$ {
add_header Content-Security-Policy "default-src 'none'; frame-ancestors 'none'; style-src 'self' 'unsafe-inline'";
}
}
对于第一个规则,我们可以
ctx.response.set('Content-Security-Policy', 'default-src ...');
svg 文件的第二行怎么样。
只用正则表达式
const svgPattern = /.+\.svg$/;
if (filename.test(svgPattern)) {
// add required header
}
目标是为 svg 文件设置特殊规则,
server {
add_header Content-Security-Policy "default-src 'none'; child-src https://www.youtube.com; font-src 'self' https://fonts.gstatic.com; frame-ancestors 'none'; frame-src https://www.youtube.com; img-src 'self'; media-src 'self'; script-src 'self'; style-src 'self' https://fonts.googleapis.com";
location ~ \.svg$ {
add_header Content-Security-Policy "default-src 'none'; frame-ancestors 'none'; style-src 'self' 'unsafe-inline'";
}
}
对于第一个规则,我们可以
ctx.response.set('Content-Security-Policy', 'default-src ...');
svg 文件的第二行怎么样。
只用正则表达式
const svgPattern = /.+\.svg$/;
if (filename.test(svgPattern)) {
// add required header
}