Size: a a a

2019 December 25

DP

Daniel Podolsky in Go-go!
два комплекта
источник

DP

Daniel Podolsky in Go-go!
один приватный на сервере, другой на клиенте
источник

S

Sergey in Go-go!
приватный ключ есть только у сервиса авторизации. всем остальным раздаёшь публичный ключ. на фронте вообще не нужны ключи
источник

I

Igor in Go-go!
а. догнал
источник

I

Igor in Go-go!
Sergey
приватный ключ есть только у сервиса авторизации. всем остальным раздаёшь публичный ключ. на фронте вообще не нужны ключи
А JWT разве не ведет к возможности угона токена? Фронтэндеры - тоже люди, тоже могут ошибиться и добавить что-то в скрипты с непроверенного источника. Тогда это самое будет иметь доступ почти ко всей информации на странице, и отправлять ее куда-то насторону.
источник

ВС

Владимир Столяров in Go-go!
Так тут и не только jwt утечь может, id сессии в этом плане ничем не отличается
источник

I

Igor in Go-go!
Владимир Столяров
Так тут и не только jwt утечь может, id сессии в этом плане ничем не отличается
если он HttpOnly, то как он утечет? к нему JS доступа не имеет
источник

S

Sergey in Go-go!
для этого используется два токена. одним аутентифицируешься, у него короткий срок жизни (1-10 минут), вторым получаешь новый токен для аутентификации, когда у него время жизни истекло. второй надо хранить надёжно. угонят первый токен - скорее всего даже воспользоаться не успеют - за несколько минут превращается в бесполезный набор байт
источник

I

Igor in Go-go!
Sergey
для этого используется два токена. одним аутентифицируешься, у него короткий срок жизни (1-10 минут), вторым получаешь новый токен для аутентификации, когда у него время жизни истекло. второй надо хранить надёжно. угонят первый токен - скорее всего даже воспользоаться не успеют - за несколько минут превращается в бесполезный набор байт
а чем это лучше сессии с хттп-онли?
источник

ВС

Владимир Столяров in Go-go!
Тем, что хранить сессию не надо
источник

S

Sergey in Go-go!
с сессией чтобы проверить, что на твой сервис пришёл запрос от васи  пупкина, твоему сервису нужно сходить на узел, хранящий сессии и данные о пользователях. это время, это ресурсы. с асимметричным jwt любой твой сервис всегда может быть уверен, что запрос от васи пупкина и токен ему точно выдал доверенный сервис, никуда не ходя при этом
источник

I

Igor in Go-go!
Да, это существенный плюс
источник

S

Sergey in Go-go!
а тому узлу с сессиями ещё и в базу надо сходить
источник

I

Igor in Go-go!
Sergey
а тому узлу с сессиями ещё и в базу надо сходить
или в редис
источник

S

Sergey in Go-go!
ну даже поход в редис будет заметно дольше проверки подписи у jwt)
источник

I

Igor in Go-go!
но без редиса все равно тут не обойтись. Первый токен же надо где-то эти 10 минут хранить
источник

I

Igor in Go-go!
А вот этот первый токен - это ж и есть по факту сессия, не?
источник

S

Sergey in Go-go!
ну одно дело раз в 10 минут сходить в хранилище, и другое - каждую пару секунд
источник

I

Igor in Go-go!
Я к тому, что правильным ответом на вопрос Jwt или сессии будет "и то, и другое (и без хлеба)"
источник

C

Constantine in Go-go!
оп оп за jwt в локал сторейдже трём?
источник