所以,这个问题很简单,尽管我开始怀疑这是否会得到回答......
我有一个网站,我想用推荐的 ViewStateUserKey 来保护我的视图状态。
在我的基本页面(显然从 Page 继承)我有这个代码:
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
if (User.Identity.IsAuthenticated)
base.ViewStateUserKey = Session.SessionID;
}
在 localhost 上运行良好,但是,当我将其上传到主机(由我们的本地提供商之一提供的共享主机)时,它会在我进行身份验证后给出传统的“视图状态 MAC 验证失败”错误。如果我将此代码注释掉,它会完美运行,所以我 1000% 确定这是原因。
在共享主机上执行视图状态安全的最佳方法是什么?我也已经设置了 ViewStateMac="Enabled"。是否足够或推荐的解决方法是什么?