是否可以在Azure Blob存储中托管的静态网站上添加内容安全策略(CSP)标头?
我可以看到您可以通过以下命令使用Azure CLI添加元数据:
giosink
但是,这些永远不会传播到HTTP标头。
是否可以将自定义标头添加到Blob?
答案 0 :(得分:2)
在将 CDN 映射到 Azure Blob 存储中托管的静态网站后,您可以在规则引擎部分将 CSP 标头附加到 Azure CDN。请找到分步参考here
答案 1 :(得分:1)
暂时无法使用此功能(您可以转到feedback site对该功能进行升级),因此可以使用Azure函数功能来实现。
这是您可以参考的博客:Static web hosting with security headers on Azure。
有一种方法(在msdn enter link description here中提供答案)将X-XSS Protection添加到Web。在应用程序wwwroot文件夹中创建web.config文件,然后粘贴以下内容:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<!-- START x-xss protection -->
<httpProtocol>
<customHeaders>
<add name="X-Xss-Protection" value="1; mode=block" />
<add name="Content-Security-Policy" value="default-src 'self';" />
<remove name="X-Powered-By" />
</customHeaders>
</httpProtocol>
<!-- END x-xss protection -->
<rewrite>
<rules>
<!-- BEGIN rule TAG FOR HTTPS REDIRECT -->
<rule name="Force HTTPS" enabled="true">
<match url="(.*)" ignoreCase="false" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" appendQueryString="true" redirectType="Permanent" />
</rule>
<!-- END rule TAG FOR HTTPS REDIRECT -->
</rules>
</rewrite>
</system.webServer>
</configuration>