Size: a a a

Node.js — русскоговорящее сообщество

2021 April 18

НС

Никита Сковорода... in Node.js — русскоговорящее сообщество
через сессии? 😉
источник

DR

Dmitry Remezov in Node.js — русскоговорящее сообщество
Ну норм практика в токен права класть, чтобы на каждый чих не делать запросы.
Верификация/инвалидация пришедшего токена - другой вопрос
источник

НС

Никита Сковорода... in Node.js — русскоговорящее сообщество
через разлогаут всех?
источник

AA

Arkadiy Alexeev in Node.js — русскоговорящее сообщество
Он имел в виду блэк лист для логики обновления рефреша
источник

НС

Никита Сковорода... in Node.js — русскоговорящее сообщество
> Верификация/инвалидация пришедшего токена - другой вопрос

Как раз при решении этого вопроса мы либо убиваем логаут, либо убиваем всех, либо переизобретаем сессии, но хуже.
источник

AA

Arkadiy Alexeev in Node.js — русскоговорящее сообщество
Ага, потом удаленно поменяли права, а жвт не в курсе кек
источник

DR

Dmitry Remezov in Node.js — русскоговорящее сообщество
(c)
источник

НС

Никита Сковорода... in Node.js — русскоговорящее сообщество
источник

AA

Arkadiy Alexeev in Node.js — русскоговорящее сообщество
имхо для 95% проектов достаточно сессии + обычный токен
источник

RP

Roman Piontik in Node.js — русскоговорящее сообщество
Нет. Через UUID пользователя. Привалидации jwt идет запрос в редис на черные списки. В черный список пользователь помещается с ttl равным сроку действия refresh token. Таким образом, осущесталяется отзыв выданных токенов.

Это гораздо эффективнее чем в бд хранить сесси. Т.к. списки отзыва в сотни и тысячи раз компактнее. Плюс саоочищаются по ttl.
источник

НС

Никита Сковорода... in Node.js — русскоговорящее сообщество
см. картинку выше
источник

НС

Никита Сковорода... in Node.js — русскоговорящее сообщество
что в теории произойдёт, если твой редис падает?
источник

НС

Никита Сковорода... in Node.js — русскоговорящее сообщество
если всё ломается — ты переизобрёл сессии, но хуже
источник

ТВ

Тимофей Веткин... in Node.js — русскоговорящее сообщество
то есть ты за сессии? Тогда что в них лучше хранить? Только uuid пользователя или весь объект пользователя?
источник

НС

Никита Сковорода... in Node.js — русскоговорящее сообщество
если мы пропускаем пользователя — у нас дыра
источник

AA

Arkadiy Alexeev in Node.js — русскоговорящее сообщество
Айди + небольшой пакет полезной инфы
доступы и т д
источник

RP

Roman Piontik in Node.js — русскоговорящее сообщество
Зависит от стратегии. При жесткой - все юзеры будут ждать пока поднимится редис. Но только не нужно из частногт случая делать проьлему. Что убдет если отвалится БД? А если бэк ляжет? А если 3тья мировая?
источник

НС

Никита Сковорода... in Node.js — русскоговорящее сообщество
нет, суть не в частном случае
суть в том, что если ты жёстко ждёшь доступа к бд при проверке — это и есть аналог сессий.
но более кривой и громоздкий.
источник

AA

Arkadiy Alexeev in Node.js — русскоговорящее сообщество
А каким образом сессия связана с куками?
источник

RP

Roman Piontik in Node.js — русскоговорящее сообщество
Нет. Сессия это хранение состояния клиента на сервере. А ведение черных списков это аналог фаерврла.
источник