Нужно ли проверять аутентификацию пользователя при каждом socket-ивенте?

Нужно ли проверять аутентификацию пользователя при каждом socket-ивенте?
Или достаточно только один раз - при on connection (безопасно ли это будет)?

Под аутентификацией имею в виду операции по проверке JWT/Bearer токена. На каждый socket-event мне кажется затратно проверять подпись, тк сокеты могут сыпаться быстро и в большом количестве.

Например, при подключении к сокет серверу в query буду отправлять userId и accessToken. Далее буду проверять, что accessToken валдиный для userId. Может ли пользователь отправить сначала свой userId со своим accessToken, а затем, рамках этого сокета подменить userId?
  • Вопрос задан
  • 489 просмотров
Пригласить эксперта
Ответы на вопрос 1
@KoreanGuy
Можно проверять, можно нет. Подменить не сможет, но токен может истечь во время сессии. Если кто-то украдет чужой токен и подключится пока токен валиден, то в теории, если валидировать только при подключении, он сможет использовать украденный токен пока не отсоединится, даже если токен живет только час.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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