我有一个带有典型xss保护的asp.net mvc 2项目
每个表单中都有 <%=Html.AntiForgeryToken() %>
,每个帖子操作都有[ValidateAntiForgeryToken]
。
这在Chrome,Firefox和IE中正常运行。
但我在Safari(v 5.1.7)中收到以下错误。
System.Web.Mvc.HttpAntiForgeryException:必需的防伪 令牌未提供或无效。
我看到异常的原因是创建的RequestValidationToken
Cookie的到期日期不正确Mon, 01 Jan 2001
,而其他浏览器中的{0}正确设置为Session
。< / p>
如何让Safari停止为我的Anti-Forgery cookie分配虚假的到期日期?
答案 0 :(得分:1)
我通过从IIS中的身份验证提供程序列表中删除“negotiate”来解决此问题。
类似于safari的这个问题: