Size: a a a

Clojure — русскоговорящее сообщество

2019 October 06

ɪᴋ

ɪɢᴏʀ ᴋʜᴀʀɪɴ in Clojure — русскоговорящее сообщество
Вот тут действительно не нужно ни в базу за паролем лезть, ни в редис за токеном.
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
ɪɢᴏʀ ᴋʜᴀʀɪɴ
Но идея же в том, чтобы в JWT засунуть всю информацию для авторизации. В стандартном поле exp хранится время истечения, например. Можно добавить скоупы.
а отозвать такой токен как?
например при явном логауте?
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
я, например, сколько перечитал, работал с разными апи, свои писал — у меня нет ясной картинки по данному вопросу
везде торчат какие-нибудь допущения
источник

ɪᴋ

ɪɢᴏʀ ᴋʜᴀʀɪɴ in Clojure — русскоговорящее сообщество
Никак получается) Хорошо что у токена малый TTL, если использовать рефреш!
источник

ɪᴋ

ɪɢᴏʀ ᴋʜᴀʀɪɴ in Clojure — русскоговорящее сообщество
Вот мы и пришли к мысли, что рефреш не бесполезен
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
тема токенов не утихает который день :)
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
ɪɢᴏʀ ᴋʜᴀʀɪɴ
Никак получается) Хорошо что у токена малый TTL, если использовать рефреш!
а можно взломать и генерить токены на стороне злоумышленника
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
ɪɢᴏʀ ᴋʜᴀʀɪɴ
Вот тут действительно не нужно ни в базу за паролем лезть, ни в редис за токеном.
но иногда проще слазить, если база локальная.
Чем постоянно гонять от клиента джсон в базе64, да еще от него всякие хэши считать.
источник

ɪᴋ

ɪɢᴏʀ ᴋʜᴀʀɪɴ in Clojure — русскоговорящее сообщество
Но я не считаю что это предмет спора. Это написано в RFC, если хочется на Хабре убедить кого-то что это решительно неправильно, то нужно это делать было лет 7 назад.
источник

ɪᴋ

ɪɢᴏʀ ᴋʜᴀʀɪɴ in Clojure — русскоговорящее сообщество
@strofimov1972 @mpenzin согласен. Я и сам не фанат JWT.
источник

ɪᴋ

ɪɢᴏʀ ᴋʜᴀʀɪɴ in Clojure — русскоговорящее сообщество
Экономия на спичках.
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
ɪɢᴏʀ ᴋʜᴀʀɪɴ
Экономия на спичках.
для него вот прямо есть юзкейс - когда у вас фиг пойми какие сервисы и фиг где работают
источник

ɪᴋ

ɪɢᴏʀ ᴋʜᴀʀɪɴ in Clojure — русскоговорящее сообщество
Может что-то не понимаю, но Гугл вон простые токены генерит, а им явно полезно было бы сэкономить.
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
и они могут вообще не знать, где-там у вас редис живет с сессиями или вообще не иметь к нему доступа.
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
Но гемор оправдан только в этом случае - в простых случаях удобнее делать центральное сессиохранилище с быстрым доступом.
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
Отдельный гемор возникает, если вдруг потребуется иметь возможность экспайрить токен принудительно, реньше его времени.
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
Причем этот гемор сразу перекрывает большую часть преимуществ.
источник

ɪᴋ

ɪɢᴏʀ ᴋʜᴀʀɪɴ in Clojure — русскоговорящее сообщество
Ну вот пара JWT + refresh эту проблему тоже минимизирует получается.
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
ɪɢᴏʀ ᴋʜᴀʀɪɴ
Ну вот пара JWT + refresh эту проблему тоже минимизирует получается.
не совсем.
Я как раз сталкивался с такой штукой - товарищи построили всякую авторизацию на жвт - все красиво модно молодежно...
и там в атрибутах указывались уровни доступа юзера по группам.
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
Все это было классно, пока продукт овнер не сказал "но надо чтобы юзер отрубался от группы в тот же момент, когда я нажму на баттон".
а не когда-то там через 5 минут или даже через минуту, когда у него там токен поэкспайрится.
источник