WebAPI是否需要ValidateAntiForgeryToken

时间:2018-11-26 07:49:52

标签: asp.net-web-api asp.net-core

我正在将WebAPI与asp.net核心一起使用... 我想知道我的动作或等效项是否需要类似ValidateAntiForgeryToken属性的东西?

我将使用不记名令牌/ JWT作为授权用户的一部分...

SPA或移动客户端将使用该API。

1 个答案:

答案 0 :(得分:1)

如果您不使用Cookie /基本身份验证,则没有必要。 在安全堆栈交换上参考以下答案:https://security.stackexchange.com/a/166798/128394

存在CSRF的原因是因为浏览器会在其他来源的请求中自动包含该域的Cookie。 如今,您实际上可以通过Cookie上的SameSite属性进行控制。

由于不记名令牌作为授权标头发送并存储在例如本地存储,它们将永远不会被浏览器自动发送,而其他站点将无法访问您站点的本地存储(至少它们不应,这将是浏览器中的主要安全漏洞)。 因此,不会发生CSRF。