Size: a a a

Software Design/Architecture/Zen

2020 November 26

AC

Artur Chobanyan in Software Design/Architecture/Zen
Я не раз сталкивался с данной проблемой, не разу без констылей не решили
источник

DT

Dmitriy Tkachenko in Software Design/Architecture/Zen
Нужен логаут где нет сессий - что?
источник

DT

Dmitriy Tkachenko in Software Design/Architecture/Zen
Что такое логаут?
источник

DT

Dmitriy Tkachenko in Software Design/Architecture/Zen
Там где нет сессий
источник

DT

Dmitriy Tkachenko in Software Design/Architecture/Zen
Jwt - это как reference на пользователя - пока есть пользователь, jwt валиден
источник

EK

Evgeniy Kuvshinov in Software Design/Architecture/Zen
Dmitriy Tkachenko
Jwt - это как reference на пользователя - пока есть пользователь, jwt валиден
Получается центральное хранилище пользователей
Чтобы разные сервисы могли чекнуть
Хотя вы как раз правильно говорите что надо сессии юзать для сессий
источник

SP

Sergey Protko in Software Design/Architecture/Zen
Artur Chobanyan
@fes0r как тебе идея хранить в jwt дату выпуска и после log out  считать выпущенные до ивалид?
Хорошая идея - как раз для фич "инвалидировать все"
источник

SP

Sergey Protko in Software Design/Architecture/Zen
Тут проблема только в том что эта логика должна быть на стороне принимающей токен и обычно фичи по управлению сессиями не имеет смысла там держать - вся идея hmac теряется
источник

SP

Sergey Protko in Software Design/Architecture/Zen
По сути если у тебя есть требования по мгновенной инвалидами токена и проверка где-то на уровне мидлваров/ingress то такое провернуть можно. Индивидуальные токены с айдишками сессий - тут так же можно Блэк лист держать или фильтр Блума какой
источник

SP

Sergey Protko in Software Design/Architecture/Zen
В 99% то что токен валиден ещё пару минут после инвалидами сессий не является проблемой
источник

SP

Sergey Protko in Software Design/Architecture/Zen
А за сессию свои механизмы отвечают которые позволяют тебе получить новый токен.
источник

AC

Artur Chobanyan in Software Design/Architecture/Zen
Sergey Protko
Хорошая идея - как раз для фич "инвалидировать все"
Спасибо за подробный ответ
источник

SP

Sergey Protko in Software Design/Architecture/Zen
Все же важно подчеркнуть зачем нужен jwt и прочие hmac. Оно надо когда системы которые принимают решение есть у тебя доступ или нет и штуки которые непосредственно операцию обслуживают разные системы.

Пример - docker registry - внешняя система выдает токен и регистри разрешает опреацию.

Другой пример - система выдает одноразовый токен и с ним ты идёшь заливать файлик на сервер (s3 signed requests)
источник

ST

Serguei Tarassov in Software Design/Architecture/Zen
Evgenii Evgenivich
Что будет лучше Guid или Guid string as Key?
Guid ессно, внутри это int128. Некоторые СУБД оптимизированы под ключи этого типа, например MSSQL. Админы недолюбливают гуид за фрагментацию, но это решается в частных случаях. Подробнее см. в книжке "СУБД для программиста. Базы данных изнутри"
источник

SB

Sergey Buyanov in Software Design/Architecture/Zen
Еще если для внешнего мира то  делать как string, а для внутреннего хранения можно как guid, единственное не все базы его могут поддержать из коробки
источник

EE

Evgenii Evgenivich in Software Design/Architecture/Zen
@arbinada_com , спасибо!
Sergey , спасибо! Поэтому и возник вопрос о типе хранение)
источник

ST

Serguei Tarassov in Software Design/Architecture/Zen
Sergey Buyanov
Еще если для внешнего мира то  делать как string, а для внутреннего хранения можно как guid, единственное не все базы его могут поддержать из коробки
"Для внешнего мира" - это что значит?
источник

AF

Andrey Furman in Software Design/Architecture/Zen
Serguei Tarassov
"Для внешнего мира" - это что значит?
Апи принимает параметр как стринг, свагер.
В ормке, в модельке прописано guid
источник
2020 November 27

АР

Андрей Радионов... in Software Design/Architecture/Zen
привет
источник

АР

Андрей Радионов... in Software Design/Architecture/Zen
что делать, если с API приходит объект и нужно его преобразовать в другой сложный объект, с поведением и т.д. Использовать Builder или фабрику?
источник