Как проверить авторизацию в Node.js?

Доброго времени суток!

Есть проект на Yii2. Нужно реализовать чат с преферансом и профурсетками.

На данный момент есть коннект к серверу средствами socket.io. После коннекта передается ID пользователя. Как правильно проверить авторизован ли пользователь? Безопасно ли передавать вместе с ID пользователя токен и сравнивать на сервере переданный токен с токеном пользователя из БД? Я так понимаю, что в таком случае кто-угодно может подключиться к серверу, зная токен. Можно ли использовать что-то из того, что Yii2 хранит в куках? Если можно, то как это дело расшифровать?
  • Вопрос задан
  • 786 просмотров
Пригласить эксперта
Ответы на вопрос 1
@BorisKorobkov
Web developer
При аутентификации юзера на PHP:
  1. сгенерировать токен с id, ip, user-agent, временем
  2. зашифровать его
  3. записать в куку.


На клиенте на JS:
  1. взять токен из кук,
  2. передать через сокет. Чтобы никто не перехватил - используйте https.


На сокет-сервере:
  1. расшифровать токен,
  2. проверить ip, user-agent
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы