170 похожих чатов

В пятницу спрашивал, но так и не нашел решения. Можно

ли как-то сделать аутентификацию при подключении к webSocket'у через токен? нашел только один вариант , это передавать его просто в событиях

14 ответов

7 просмотров

1. Передать в URL при подключении (query) 2. Передать уже после подключения первым сообщением А ещё можно в куке

Dmitry-Kudryavtsev Автор вопроса

url как-то опасно, мне кажется

Не совсем опасно, но да, лучше отправлять уже после подключения отдельным сообщением

Dmitry-Kudryavtsev Автор вопроса

В этом случае мне нужно на каждое событие добавлять? Я просто думаю, если у человека сокет больше 30 минут будет открыт (срок токена), то нужно его как-то рефрешить

1. Клиент подключился по вебсокетам 2. Сервер отправляет "ты анонимный хрен, иди нафиг" 3. Клиент отправляет "нет, я петя#my-super-token" 4. Сервер соглашается и работает с петей *прошло пол часа* 5. Сервер: Токен больше не валидный, я тебе больше не верю, иди нафиг 6. Клиент: Да нет же, это я, вот новый токен

второй пункт лишний же, первое сообщение сокета это токен

Как удобнее

Dmitry-Kudryavtsev Автор вопроса

Вот 5й пункт, как сервер должен через пол часа понять , что токен не валидный если клиент больше не взаимодействовал с ним

Можно перед каждым взаимодействием проверять. Можно таймер поставить

а почему опасно?

Dmitry-Kudryavtsev Автор вопроса

да это я предположил, подумал так легче подменить его

В случае вебсокетов основная проблема - URL-ы потенциально логгируются.

Но это проблема всех http запросов, да? В самих вебслкетах вроде URL нигде нет кроме handshake

Всех запросов c URL, это не только HTTP. Но да, только в handshake. Так в случае передачи токена в query он на handshake и приходит

Похожие вопросы

Обсуждают сегодня

коллеги, добрый вечер! А никто не знает как модальная форма может себя закрыть? Ну допустим модальная форма определила, что смысла ей работать нет и хочет вернуть modalResult...
Михаил
83
А если изначально бот работал так : есть сайт онлайн школы. У каждого ученика свой кабинет. Где он авторизуется по своим данным. И уже в кабинете, на самом сайте делает оплату...
Денис 💡 Фрилансер
13
Добрый день Хочу начать обучение языку, не являюсь представителем it, буду благодарна за помощь, совсем пока не понимаю ничего) Подскажите, пожалуйста, где можно начать первы...
Sara Lala
20
А что ты вообще делаешь ?
Yesgoter
13
средствами IBX как-то можно выполнить запрос insert ... returning?
Igor
31
На работе пишем распределенное приложение, у которого сотни, если не тысячи настроек. Конфиги написаны на xml, расположены на разных хостах и должны быть согласованы друг с др...
Aleksandr Druzhinin
5
Всем привет 🙂 Какая-то непонятная проблема у меня с видео, раньше такого не было. Загружаю видео с гугл диска именно в видео mp4 и меняю ссылку как положено вот она: https://d...
Ксюша|Верстка на Тильде|Дизайн 🦥
6
Hi there everyone Is there anyone who have not started hamster bot yet? I need only one, I'll be glad if you do this for me DM if you haven't yet
Mehrshad
53
А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
131
А какие у этого try практические плюсы перед eval?
Oleg Volkov
41
Карта сайта