Size: a a a

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

2020 May 19

ЕП

Евгений Пантелеев... in Node.js — русскоговорящее сообщество
Pavel Shakhov (pongo)
> под одной сессией может сидеть N хацеров, и в ЛК этого видно не будет

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

теперь если 10 разных клиентов будут использовать один хэш, все будет нормально
в лк будет видно, что есть одна сессия, вот она, а вот сколько народа ее используют - уже другой вопрос
источник

AM

Aga Mahmudov in Node.js — русскоговорящее сообщество
Сессии надо привязывать к user-agent и устройству
источник

GS

Grigorii K. Shartsev in Node.js — русскоговорящее сообщество
Евгений Пантелеев
ну как стандартные сессии устроены
есть хэш, который клиент шлет на сервер. сервер лезет в таблицу юзеров, находит там этот хэш - профит

теперь если 10 разных клиентов будут использовать один хэш, все будет нормально
в лк будет видно, что есть одна сессия, вот она, а вот сколько народа ее используют - уже другой вопрос
С одной стороны, пользователь увидит в ЛК, что кто-то сидит.

Но в другую сторону, сессию можно инвалидировать здесь и сейчас, а акксесс только по истечение времени жизни.
источник

AM

Aga Mahmudov in Node.js — русскоговорящее сообщество
Чтобы одна сессия - одно устройство и не будет проблем с безопасностью
источник

ЕП

Евгений Пантелеев... in Node.js — русскоговорящее сообщество
Pavel Shakhov (pongo)
так что в итоге, рефреш безопаснее сессии?

при условии, что у нас есть сервера для черных списков токенов и волнует только безопасность
я говорю, что да :)

конечно, я не предлагаю его тащить в какой-нибудь php, а вот для SPA - то, что доктор прописал
источник

А

Александр in Node.js — русскоговорящее сообщество
Aga Mahmudov
Чтобы одна сессия - одно устройство и не будет проблем с безопасностью
Кстати интересно, есть ли в браузерах что-то на подобии deviceId, или велосипедить нужно?
источник

ЕП

Евгений Пантелеев... in Node.js — русскоговорящее сообщество
Aga Mahmudov
Сессии надо привязывать к user-agent и устройству
это не защита, это имитация защиты)
источник

GS

Grigorii K. Shartsev in Node.js — русскоговорящее сообщество
Евгений Пантелеев
это не защита, это имитация защиты)
как и с jwt
источник

AM

Aga Mahmudov in Node.js — русскоговорящее сообщество
Александр
Кстати интересно, есть ли в браузерах что-то на подобии deviceId, или велосипедить нужно?
В браузере нет
источник

GS

Grigorii K. Shartsev in Node.js — русскоговорящее сообщество
Евгений Пантелеев
я говорю, что да :)

конечно, я не предлагаю его тащить в какой-нибудь php, а вот для SPA - то, что доктор прописал
с php и spa вообще никак не связано.
источник

AM

Aga Mahmudov in Node.js — русскоговорящее сообщество
Евгений Пантелеев
это не защита, это имитация защиты)
С таким подходом надо как Nasa, c замкнутой системой)
источник

ЕП

Евгений Пантелеев... in Node.js — русскоговорящее сообщество
Grigorii K. Shartsev
С одной стороны, пользователь увидит в ЛК, что кто-то сидит.

Но в другую сторону, сессию можно инвалидировать здесь и сейчас, а акксесс только по истечение времени жизни.
ну я же не про конкретный случай, а про потенциал
мне спокойнее, когда под одной сессией может сидеть только один человек
источник

AM

Aga Mahmudov in Node.js — русскоговорящее сообщество
И то даже с этим подходом умудрились МКС хакнуть, стырив один из компов
источник

PS

Pavel Shakhov (pongo... in Node.js — русскоговорящее сообщество
Евгений Пантелеев
ну я же не про конкретный случай, а про потенциал
мне спокойнее, когда под одной сессией может сидеть только один человек
но ведь угнав рефреш он сможет какое-то время посидеть?
источник

ЕП

Евгений Пантелеев... in Node.js — русскоговорящее сообщество
Pavel Shakhov (pongo)
но ведь угнав рефреш он сможет какое-то время посидеть?
рефреш - самое ценное
угнав его, он сможет сидеть пока его кто-то не заметит
источник

GS

Grigorii K. Shartsev in Node.js — русскоговорящее сообщество
Евгений Пантелеев
ну я же не про конкретный случай, а про потенциал
мне спокойнее, когда под одной сессией может сидеть только один человек
При чём тут потенциал.

У тебя просто выбор между двух стульев.

1. Сессия. Можно угнать незаметно, зато можно сразу инвалидировать.
2. JWT. Угон заметный, но только после истечения срока. При том до этого срока его даже не инвалидировать.

Проблема 1 — решаема.
Проблема 2 — нет.
2 делать сложнее и надо уметь готовить.

Так что повторюсь, не из-за безопасности выбирают JWT
источник

PS

Pavel Shakhov (pongo... in Node.js — русскоговорящее сообщество
Евгений Пантелеев
рефреш - самое ценное
угнав его, он сможет сидеть пока его кто-то не заметит
эээ. и в чем разница с сессией?
источник

ЕП

Евгений Пантелеев... in Node.js — русскоговорящее сообщество
но рефреш гуляет по сети гораздо реже..
в общем, это другая история)

в сухом остатке я за то, что
под одной сессией может сидеть много человек
а в под одной парой рефреш-аксес - только один
источник

PS

Pavel Shakhov (pongo... in Node.js — русскоговорящее сообщество
Евгений Пантелеев
но рефреш гуляет по сети гораздо реже..
в общем, это другая история)

в сухом остатке я за то, что
под одной сессией может сидеть много человек
а в под одной парой рефреш-аксес - только один
вот только угнав рефреш, он сможет сколько угодно под ним сидеть?
источник

ЕП

Евгений Пантелеев... in Node.js — русскоговорящее сообщество
Pavel Shakhov (pongo)
вот только угнав рефреш, он сможет сколько угодно под ним сидеть?
но в лк юзер увидит, что у него две "активных сессии"
источник