我担心在模板中声明的ajax调用中使用Django的{{ csrf_token }}
的安全性。考虑以下情况:
function set_sensitive_data() {
$.ajax({
url: "{% url 'some_sensitive_view' %}",
method: "POST",
data:{
'csrfmiddlewaretoken': "{{ csrf_token }}",
'sensitive_data': "{{ some_data }}"
},
});
}
它非常好用,但有什么特别的原因让我不应该这样做吗?我读过Django的文档,知道首选的方式是使用cookie,但事实并非如此,我没有询问其他解决方案-我只想知道这种方式是否不安全,如果是,为什么?
这很好。CSRF令牌是不可重复使用的,并且只要您使用HTTPS,该令牌在传输过程中仍然是加密的。