Size: a a a

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

2020 February 26

Y💜

Yuri ♂️ 💜 Ly in Node.js — русскоговорящее сообщество
Misha Shandra
ну jwt для авторизации. А в базе что бы показать какой ты именно пользователь нужно предоставить её jwt
В чем проблема использовать сессии?
источник

GS

Grigorii K. Shartsev in Node.js — русскоговорящее сообщество
Misha Shandra
ну jwt для авторизации. А в базе что бы показать какой ты именно пользователь нужно предоставить её jwt
> А в базе что бы показать какой ты именно пользователь нужно предоставить её jwt

Вот это не очень понятно, что за действие и зачем
источник

MS

Misha Shandra in Node.js — русскоговорящее сообщество
Grigorii K. Shartsev
> А в базе что бы показать какой ты именно пользователь нужно предоставить её jwt

Вот это не очень понятно, что за действие и зачем
при запросе надо предоставить токен, где будет данные кто ты (типа админ или пользователь), твой id и ещё что то. Так ты сможешь получить информацию обо всём что позволено. Я раньше использовал auth0 и hasura, а теперь надо уйти с auth0  и написать на ноде
источник

GS

Grigorii K. Shartsev in Node.js — русскоговорящее сообщество
Misha Shandra
при запросе надо предоставить токен, где будет данные кто ты (типа админ или пользователь), твой id и ещё что то. Так ты сможешь получить информацию обо всём что позволено. Я раньше использовал auth0 и hasura, а теперь надо уйти с auth0  и написать на ноде
токен парсится приложением, а с бд работаешь с уже полученными данными
источник

MS

Misha Shandra in Node.js — русскоговорящее сообщество
угу
источник

GS

Grigorii K. Shartsev in Node.js — русскоговорящее сообщество
Зачем тогда в БД засовывать токен?
источник

MS

Misha Shandra in Node.js — русскоговорящее сообщество
что бы она тебя пропустила
источник

YZ

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

GS

Grigorii K. Shartsev in Node.js — русскоговорящее сообщество
Misha Shandra
что бы она тебя пропустила
Нельзя в запрос передать сразу ID и прочее, а не сам токен?
источник

GS

Grigorii K. Shartsev in Node.js — русскоговорящее сообщество
Misha Shandra
что бы она тебя пропустила
Это для ограничений прав политиками СУБД?
источник

MS

Misha Shandra in Node.js — русскоговорящее сообщество
Grigorii K. Shartsev
Нельзя в запрос передать сразу ID и прочее, а не сам токен?
Неа, так любой мог бы просто написать id какого то пользователя и пройти. А токен можно сгенерить только с помощью private key, а прочитать с помощью public key. Мы зашифровываем id в токен и передаём его
источник

GS

Grigorii K. Shartsev in Node.js — русскоговорящее сообщество
Misha Shandra
Неа, так любой мог бы просто написать id какого то пользователя и пройти. А токен можно сгенерить только с помощью private key, а прочитать с помощью public key. Мы зашифровываем id в токен и передаём его
Так эту проверку может приложение делать.

Или у вас публичная БД?
источник

KL

Kirill Lesohorskyi in Node.js — русскоговорящее сообщество
Misha Shandra
Неа, так любой мог бы просто написать id какого то пользователя и пройти. А токен можно сгенерить только с помощью private key, а прочитать с помощью public key. Мы зашифровываем id в токен и передаём его
так если данные токена подделать нельзя, зачем его складывать в БД
источник

MS

Misha Shandra in Node.js — русскоговорящее сообщество
Grigorii K. Shartsev
Так эту проверку может приложение делать.

Или у вас публичная БД?
не совсем понимаю какая это
источник

MS

Misha Shandra in Node.js — русскоговорящее сообщество
Kirill Lesohorskyi
так если данные токена подделать нельзя, зачем его складывать в БД
токен делаеться сервером на некоторое время, а бд просто проверяет подленность токена
источник

GS

Grigorii K. Shartsev in Node.js — русскоговорящее сообщество
Misha Shandra
не совсем понимаю какая это
> так любой мог бы просто написать id

У вас кто угодно может писать в БД?
источник

KL

Kirill Lesohorskyi in Node.js — русскоговорящее сообщество
Misha Shandra
токен делаеться сервером на некоторое время, а бд просто проверяет подленность токена
зачем проверять подлинность, если токен нельзя подделать? Смысл JWT исключительно в том, что вам не нужно ходить в базу/хранилище сессий и доставать данные о пользователе оттуда
источник

MS

Misha Shandra in Node.js — русскоговорящее сообщество
Grigorii K. Shartsev
> так любой мог бы просто написать id

У вас кто угодно может писать в БД?
там есть роли, например роль anonymous, если обратиться в базу с переменной роль: Anonymaus то ты получиш доступ ко всему что позволил админ для этой роли, аналогично с юзер и админ(но с админ надо предоставить ключ)
источник

MS

Misha Shandra in Node.js — русскоговорящее сообщество
Kirill Lesohorskyi
зачем проверять подлинность, если токен нельзя подделать? Смысл JWT исключительно в том, что вам не нужно ходить в базу/хранилище сессий и доставать данные о пользователе оттуда
угу, не нужны сесии, если я правильно понял то в этом весь смысл
источник

KL

Kirill Lesohorskyi in Node.js — русскоговорящее сообщество
Misha Shandra
угу, не нужны сесии, если я правильно понял то в этом весь смысл
да, но вы их переизобрели сложив токен в базу
источник