Я пытаюсь реализовать защиту CSRF в приложении, построенном с использованием node.js, с использованием рамки express.js. Приложение использует изобилие почтовых вызовов Ajax на сервере. Я понимаю, что инфраструктура connect обеспечивает промежуточное ПО CSRF, но я не уверен, как ее реализовать в рамках клиентских Ajax-запросов.
В других вопросах, размещенных здесь в stackoverflow, есть бит и куски, но мне еще предстоит найти достаточно полный пример того, как его реализовать как со стороны клиента, так и с сервера.
Есть ли у кого-нибудь рабочий пример, которому они хотят поделиться тем, как это реализовать? Большинство примеров, которые я видел, предполагают, что вы передаете форму на серверной стороне, а затем отправляете ее (вместе со встроенным полем формы csrf_token) на клиентскую сторону. В моем приложении все содержимое отображается на стороне клиента (включая шаблоны) через Backbone.js. Весь сервер предоставляет значения в формате JSON, которые используются на разных моделях в Backbone.js на стороне клиента. По моему мнению, мне нужно будет сначала восстановить csrf_token через ajax, прежде чем его можно будет использовать. Однако я обеспокоен тем, что это может быть проблематичным с точки зрения безопасности. Является ли это серьезной проблемой?