首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于Django的CSRF保护的问题

关于Django的CSRF保护的问题
EN

Stack Overflow用户
提问于 2011-05-20 08:49:05
回答 2查看 693关注 0票数 7

文档中有一个解释here,但我还有一些额外的问题。

为什么需要专用的CSRF cookie?

如果Django不使用特定于事务的随机数,为什么不要求在POST请求主体中嵌入会话ID呢?

为什么CSRF随机数要绑定到会话ID?Django会这样做吗?

This webpage似乎暗示CSRF现时值需要绑定到会话ID (例如,CSRF现时值=会话ID的键控散列)。为什么会这样呢?Django是否将其CSRF nonce绑定到会话ID?

为什么Django使用独立于会话的随机数而不是特定于事务的随机数?

是否出于性能方面的考虑?直观地说,特定于事务的随机数本质上似乎更安全。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-08-14 00:51:31

CSRF保护和会话具有不同的性质,因此将它们放在单个cookie中会使其更难维护。

以下是一些不同点:

  1. 你可以在不使用会话的情况下使用CSRF保护。
  2. 你可能想在会话开始之前使用CSRF (即.您不希望在用户登录之前启动会话,因为性能原因,但您希望使用CSRF).
  3. Sometimes保护您的联系人表单您想要删除会话cookie,但可能从不删除CSRF。单个浏览器会话需要
  4. CSRF保护(直到您关闭浏览器),但会话可能会持续甚至数周。
  5. 您可能希望有跨域会话,但可能永远不需要跨域CSRF。
票数 4
EN

Stack Overflow用户

发布于 2021-07-17 13:41:40

  1. CSRF是一种用于web应用程序的身份验证令牌。
  2. 它用于阻止CSRF会话使用会话,也可以使用基于CSRF令牌的身份验证系统。

有关CSRF的更多信息,请阅读以下链接。https://docs.djangoproject.com/en/3.2/ref/csrf/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6066404

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档