【发布时间】:2013-07-21 16:04:42
【问题描述】:
如果我理解正确,如果您只允许来自“AJAX”(对于 JSON 的真正意义上的 AJAJ)表单中的 JSON 作为 application/json,则不需要 CSRF 令牌,对吗?
如果有人尝试使用一些漂亮的 POST-to-iFrame hack 从另一个页面发布到表单,它将是 application/x-www-form-urlencoded,您可以立即将其丢弃。
如果有人尝试使用 AJAJ 发布到表单,只有在 OPTIONS 具有允许的 CORS 标头时才会成功。
结论:除非您使用 CORS,否则您可以避免 CSRF,因为您使用 application/json 而不是 application/x-www-form-urlencoded。
我没有考虑任何矛盾?
【问题讨论】:
标签: ajax forms security xmlhttprequest csrf