【发布时间】:2014-01-23 13:30:07
【问题描述】:
我有一个网站在负载均衡器后面的网络场中运行。我在每个服务器上的每个 web.config 文件中都有一个一致的 <machineKey /> 元素。直到最近,所有服务器都运行 .NET 4.0(未安装 .NET 4.5)。今天早上,我向农场介绍了一台新服务器,它运行与现有服务器完全相同的代码和配置,但它安装了 .NET 4.5.1。
我正在使用以下内容在所有服务器上定位 .NET 4.0
<compilation targetFramework="4.0">
还有一个这样的 machineKey 元素(为安全起见删除了键值):
<system.web>
<machineKey decryptionKey="..." validationKey="..." />
</system.web>
即使 targetFramework 是 4.0,.NET 4.0 处理验证或加密/解密的方式是否与 .NET 4.5.1 不同?
【问题讨论】:
-
这个blogs.msdn.com/b/webdev/archive/2012/10/23/… 建议它应该向后兼容,除非您以显式方式打开 4.5 模式。
-
我也是这么读的,@WiktorZychla,但在我们的情况下,我们没有预期的行为。我的下一个想法是创建一个新的 machineKey 元素,它明确指定验证和解密方法,看看这是否会有所不同。