Azure Blob存储中托管的静态网站的CSP标头

时间:2019-05-01 08:05:35

标签: azure azure-storage-blobs content-security-policy

是否可以在Azure Blob存储中托管的静态网站上添加内容安全策略(CSP)标头?

我可以看到您可以通过以下命令使用Azure CLI添加元数据:

giosink

但是,这些永远不会传播到HTTP标头。

是否可以将自定义标头添加到Blob?

2 个答案:

答案 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>