内容安全策略:允许所有外部图像?
Content Security Policy: allowing all external images?
我想只允许来自我的本地服务器的脚本有某些例外,如 jQuery 等,但要灵活地加载外部图像。
我知道有一个像
这样的指令
Content-Security-Policy: script-src 'self' https://apis.google.com; img-src 'self' https://www.flickr.com;
允许来自我自己的网络服务器和 Flickr 的图像,但是是否可以允许来自 所有 来源的图像 - 或者这会违反 CSP 的整个概念,因此是不可能的?我正在维护一个经常需要嵌入外部图像的博客,所以它基本上决定了将 CSP 添加到我的网站是否有意义并且是否易于管理。
就安全性而言,包含所有来源的图像是最安全的做法,但您可能不喜欢可以使用的图像内容。
要允许所有图像,请使用:
img-src * data:;
将此限制为 https:
来源可能是合理的,这样您的用户就不会收到混合内容(损坏的锁)错误:
img-src https: data:;
无论哪种情况,请务必发送 X-Content-Type-Options: nosniff"
以防止 Chrome/IE 中发生的内容类型嗅探。我不确定 firefox 是否会将指向 javascript 文件的图像标签视为 Javascript 由于嗅探,但你的 script-src
应该防止它变得糟糕。我不确定 apis.google.com
是否托管用户脚本,或者它是否仅限于典型的开源库。
我想只允许来自我的本地服务器的脚本有某些例外,如 jQuery 等,但要灵活地加载外部图像。 我知道有一个像
这样的指令Content-Security-Policy: script-src 'self' https://apis.google.com; img-src 'self' https://www.flickr.com;
允许来自我自己的网络服务器和 Flickr 的图像,但是是否可以允许来自 所有 来源的图像 - 或者这会违反 CSP 的整个概念,因此是不可能的?我正在维护一个经常需要嵌入外部图像的博客,所以它基本上决定了将 CSP 添加到我的网站是否有意义并且是否易于管理。
就安全性而言,包含所有来源的图像是最安全的做法,但您可能不喜欢可以使用的图像内容。
要允许所有图像,请使用:
img-src * data:;
将此限制为 https:
来源可能是合理的,这样您的用户就不会收到混合内容(损坏的锁)错误:
img-src https: data:;
无论哪种情况,请务必发送 X-Content-Type-Options: nosniff"
以防止 Chrome/IE 中发生的内容类型嗅探。我不确定 firefox 是否会将指向 javascript 文件的图像标签视为 Javascript 由于嗅探,但你的 script-src
应该防止它变得糟糕。我不确定 apis.google.com
是否托管用户脚本,或者它是否仅限于典型的开源库。