默认情况下,我使用令牌为我的所有表单提供 CSRF 保护。
但是,我注意到另一个 Web 应用程序具有与我的一个表单类似的功能。并且他们没有使用 CSRF 令牌。
所以我认为他们没有针对这种形式防止 CSRF 攻击。
所以
问题 1)除了 CSRF 令牌之外,不应该有其他方法来防止 CSRF 对吗?
我假设答案是这是唯一的方法。因此我的主要问题是
问题 2)什么时候不应该使用 CSRF 保护?
我知道一个可能的实例,即 POST 表单针对外部 URL。
我在django docs 上阅读了它。
是否还有其他不应该使用或不必要使用 CSRF 保护的情况?
更新
a) 其他 CSRF 保护方法包括用户重新认证
b)当您不需要用户登录时,您可以在不保护表单 POSTBACK 的 CSRF 的情况下逃脱。(请参阅 nbnh 的答案和评论)