终生和多次使用AntiForgeryToken?

Car*_*l R 10 asp.net xss asp.net-mvc angularjs

我正在尝试为一个角度应用程序的ajax请求实现antiforgerytokens.

antiforgerytoken是否有一生?如果我在没有触摸它的情况下在网络浏览器中打开应用程序很长一段时间,比如说一个月.由于陈旧的令牌,ajax请求会失败吗?

令牌可以重复用于多个呼叫吗?我可以在页面中的某处保留一个令牌并为所有ajax调用检索它吗?

Chr*_*att 0

ajax 请求会因令牌过时而失败吗?是的

令牌可以重复用于多次调用吗?

然而,更好的问题是问自己为什么要在 AJAX 中使用防伪令牌。如果您使用 AJAX,那么您正在使用 API,即使您还没有将其形式化(只是用于 AJAX/其他无头通信的操作/控制器的集合)。防伪令牌不能很好地与 API 配合使用,因为 1) API 通常允许第三方访问,2) 即使不允许也有更好的方法来保护它们。

如果您想确保只有您的站点可以访问您的“API”,请实施 HTTP 身份验证或其他一些方案来验证您对“API”的请求。这就是您允许长时间运行的会话不会失败的方式。