2016-10-31 5 views
0

Я использую ajax для хранения, обновления и удаления ресурсов, связанных с аутентифицированным пользователем. Маршруты для этих действий используют web промежуточное программное обеспечение, поэтому файлы cookie, сеансы и т. Д. Доступны. Проект основан на структуре Laravel.Как защитить запросы ajax в Laravel?

Необходимо ли защищать эти маршруты от несанкционированного доступа любым дополнительным способом? Я читал о токенах API, которые можно использовать, но я не уверен, что это необходимо.

Буду благодарен за любую информацию о безопасности ajax или о том, как запросы ajax работают в целом, так как это немного над моей головой в данный момент.

+0

Введение в эту статью [https://www.toptal.com/web/cookie- free-authentication-with-json-web-tokens-an-example-in-laravel-and-angularjs) помогли мне в понимании варианта использования для аутентификации токенов: в основном многоплатформенные распределенные системы, где трудно поддерживать сеанс пересечь границу. Возможно, неплохо было бы связать интерфейс и бэкэнд уже с использованием токенов, поэтому его легче масштабировать позже. – Paul

ответ

4

Я бы сказал, никакой дополнительной работы не требуется если у вас есть соответствующие проверки в таких местах, как пользователь не может удалить объекты другого пользователя, и т.д. ...

Запросы AJAX на самом деле так же, как и пользователи, просматривающие разные страницы, за исключением того, что от их имени обрабатываются запросы javascript. Поскольку все уже находится за промежуточным программным обеспечением web, нет необходимости в дополнительной аутентификации, так как ваши пользователи технически уже вошли в систему.

2

Ищут JSON Web Tokens

Что такое JSON веб-Токен?

JSON веб-маркеров (JWT) является открытым стандартом (RFC 7519), который определяет компактный и автономный путь для безопасной передачи информации между сторонами в качестве объекта JSON. Эта информация может быть проверена и доверена, поскольку она имеет цифровую подпись. JWT могут быть подписаны с использованием секретного ключа (с алгоритмом HMAC) или пары открытого/закрытого ключей с использованием RSA.

и эта статья:

Authenticate users in Node using JWT and Laravel

+0

Спасибо за ссылки. Я знаю о jwt, есть даже выделенный пакет для Laravel https://github.com/tymondesigns/jwt-auth, однако это необходимо? Если возможно (и безопасно), я предпочел бы сэкономить время и использовать встроенные функции, даже если это не будет самым причудливым решением. – Paul

Смежные вопросы