gpt4 book ai didi

ios - Django 和 iOS 中的 CSRF token

转载 作者:技术小花猫 更新时间:2023-10-29 10:48:48 26 4
gpt4 key购买 nike

所以我想了解在这里要做什么...我正在从 iOS 对我的 Django 服务器进行 POST 调用,但我不断收到 403 错误(无效的 CSRF token )。我正在考虑实现一个函数,该函数会向我返回 token (您需要登录才能访问该函数),然后将 token 添加到我的 POST 调用中。

现在...我不明白这样做有什么意义?如果我使用 TastyPie 并且所需的登录名是 APIKey...我应该免除 csrf 检查吗?

为了确保我理解正确……CSRF 是针对每个用户 session 生成的吗?因此,如果我不使用Cookies,就不需要CSRF了吗?

人们通常如何将他们的 Django 服务器与 iOS 一起使用并进行此类 POST 调用?

谢谢!

最佳答案

你是对的:如果你不使用 cookie 来管理你的 session ,你就不需要 CSRF 保护。 CSRF 之所以有效,是因为 session cookie 会自动附加到请求中;访问 token 不是。

我个人发现this article很有用。这绝对值得一读,并且可能会回答您的很多问题。

至于tastypie:它允许SessionAuthentication .如果您允许在 tastypie 中进行 session 身份验证,我建议您研究一种方法来保护您的用户免受 CSRF 攻击。对于其他身份验证方案,这似乎没有必要。据我所知,Dmitry 关于 tastypie 默认禁用 CSRF 的说法是正确的,这意味着您收到 403 错误很奇怪。也许还有其他事情正在发生。尝试将 View 包装在@csrf_exempt 中。

至于 CSRF token ,它们也称为 session 独立随机数。它们应该是永久性的,但您可能知道这对 cookie 来说是不可能的。无论如何,这意味着 CSRF cookie 在 session 中持续存在。

关于ios - Django 和 iOS 中的 CSRF token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13485035/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com