【问题标题】:Validation of viewstate MAC failed.视图状态 MAC 验证失败。
【发布时间】:2011-12-18 10:01:17
【问题描述】:

视图状态 MAC 验证失败。如果此应用程序由 Web Farm 或集群托管,请确保配置指定相同的 validationKey 和验证算法。 AutoGenerate 不能在集群中使用。

如果会话过期,是否可能发生此错误?

【问题讨论】:

    标签: asp.net


    【解决方案1】:

    除非您将其关闭,否则将根据每个请求验证 MAC。我不立即明白为什么会话结束会导致此错误,但我不会说这绝对不可能 - 您可以通过跟踪堆栈跟踪并使用 Reflector 自己检查。

    如果多台物理机在同一个会话中处理不同的请求,则更有可能发生这种情况,而不是会话到期。

    我之前遇到过这个错误,我能够通过创建静态只读机器密钥来修复它。这样,密钥在第一次设置后就永远不会改变,所以它总是会验证。在我的特定情况下,MAC 验证对我来说并不重要,但根据您的安全问题,您可能需要进一步研究这种方法的含义。

    【讨论】:

      猜你喜欢
      • 2010-09-24
      相关资源
      最近更新 更多