Size: a a a

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

2020 April 26

ТК

Таймураз Кайтмазов... in Node.js — русскоговорящее сообщество
А так жвт- сизифов труд
источник

🦉⁣

🦉 ⁣ in Node.js — русскоговорящее сообщество
То есть мало просто переизобрести токены.
Нужно кричать "НЕ Я ПРИДУМАЛ, ДРУГИЕ ЮЗАЮТ"

Ведь подумать своей головой вообще никак
источник

PS

Pavel Shakhov (pongo... in Node.js — русскоговорящее сообщество
Таймураз Кайтмазов
Раньше римляне пользовались ракушками и прочими вещами для подтирания попы
пока все остальные подтирались левой рукой
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
🦉 ⁣
То есть мало просто переизобрести токены.
Нужно кричать "НЕ Я ПРИДУМАЛ, ДРУГИЕ ЮЗАЮТ"

Ведь подумать своей головой вообще никак
Таймураз - жду обещаного...
источник

🦉⁣

🦉 ⁣ in Node.js — русскоговорящее сообщество
JWT нужны в первую очередь, чтобы подписывать запросы и ответы. А также иметь возможность валидировать этот ответ.

То, что их используют как замену сессиям, это выбор этих людей. И никто не гарантирует, что выбор правильный
источник

ТК

Таймураз Кайтмазов... in Node.js — русскоговорящее сообщество
🦉 ⁣
То есть мало просто переизобрести токены.
Нужно кричать "НЕ Я ПРИДУМАЛ, ДРУГИЕ ЮЗАЮТ"

Ведь подумать своей головой вообще никак
!ро Серый, заебал
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
А по поводу JWT, просто напомню, чтобы не было перевирания:
- человек четко дал понять, что ему это нужно просто для учебного проекта, максимально просто - это реально самое простое в данной ситуации
- еще как вариант я выше предложил хранить данные роли вместо БД в памяти/редисе чтобы не долбать БД постоянно

И да, всякие-разные механизмы со временем устаревают, но это не значит, что их нельзя юзать
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
Но вообще правильнее было, наверное, узнать сначала: Илья, а при каждом запросе юзера с токеном, как этот токен проверяется - через запрос к БД или он живет в памяти?
источник

IK

Iliya Kobaliya in Node.js — русскоговорящее сообщество
Ну идея такая,access токен живет около 2 мин ,а refresh 3. По истечению времени access токена я обновляю access токен и refresh токен(который лежит в базе данных)Первый раз авторизацию пишу))
источник

IK

Iliya Kobaliya in Node.js — русскоговорящее сообщество
Получается базу данных дергаю каждый раз,когда надо обновить рефреш токен
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
А как проверяется валидность этого access_tokena, когда с ним приходит запрос от юзера?
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
Вот бек выдал токен(ы) юзеру, и пришел с этим токеном запрос от него за инфой. Как проверяется, что пришедший токен честный, в БД проверяете или в памяти живут токены?
источник

ЮС

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

IK

Iliya Kobaliya in Node.js — русскоговорящее сообщество
Ну в payload храниться поле тип со значением 'access')Я еще наверно не дошел до проверки токена)) Я просто прверяю ,что он access или нет) Access токен хранится в localstorage у пользователя и в headers его с каждым запросом отправляю (добавляю заголовок в интерсепторе перед отпрвакой).
источник

IK

Iliya Kobaliya in Node.js — русскоговорящее сообщество
Я его декодирую с помощью jwt.verify,проверяется его время и валидность )
источник

VL

Vladimir Luvolunov in Node.js — русскоговорящее сообщество
Iliya Kobaliya
Я его декодирую с помощью jwt.verify,проверяется его время и валидность )
В try catch оберни. Верифай выбрасывает ошибку, когда токен не валидный. Либо передавай коллбэк
источник

IK

Iliya Kobaliya in Node.js — русскоговорящее сообщество
Да,я так и делаю)
источник

VL

Vladimir Luvolunov in Node.js — русскоговорящее сообщество
А, ну тогда ладно)
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
Суть решения в том, как вы обрабатываете запросы на беке, и от этого лучше отталкиваться, основных варианта два:
- вариант первый: в токене (см. JWT) есть все данные и срок жизни для того, чтобы определить отдать юзеру некий ресурс или нет, в таком случае вполне допустим вариант хранения ролей в составе JWT и подписывать его секретным ключом для защиты от подделки самого токена
- вариант второй: для проверки токена бек обращается к какому-то своему хранилищу, где проверяет наличие этого токена и данные юзера этого токена, в таком случае нет профита что-то придумывать, можно доп. данные по правам/ролям хранить/дергать в одном запросе к хранилищу для получения и ролей/прав
источник

IK

Iliya Kobaliya in Node.js — русскоговорящее сообщество
Вот собственно мидлвара))
источник