我使用 Google Chrome 开发人员工具中的审核功能检查了我们的 Web 应用程序。
首先,我收到一条警告,表明我们正在为静态内容提供不可缓存的服务:“以下资源明确不可缓存。如果可能,请考虑将其设为可缓存”。
为了解决这个问题,我将此片段添加到我们的 web-config
<staticContent>
<clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="7.00:00:00" />
</staticContent>
正如这篇博文中所推荐的那样:http: //blogs.msdn.com/b/carlosag/archive/2009/06/09/are-you-caching-your-images-and-scripts-iis-seo-can-tell -you.aspx
如果我现在在 google chrome 中开始新的审核,我会收到一个新警告:
以下可公开缓存的资源包含 Set-Cookie 标头。此安全漏洞可能导致 cookie 被多个用户共享。
您能否解释一下潜在的安全威胁以及 Asp.net 中可能的解决方案是什么?
[更新]
经过更多研究,我想这可能与这个问题有关:
为什么 ASP.NET 表单身份验证在静态图像请求上设置 cookie?
但我不能把拼图放在一起。情况并不完全相同,虽然我们的应用程序可以配置为使用表单身份验证,但我在使用 Windows 身份验证时收到了警告。