
Александр
12.05.2018
18:53:21
Всем привет. Что можно почитать на тему аутентификации и авторизации пользователя в SPA приложении?

Bohdan
12.05.2018
18:55:59
тебе точно посоветуют не читать про jwt

Александр
12.05.2018
18:56:58
Это я уже понял))
А вот как тогда это делать непонятно пока

Google

Bohdan
12.05.2018
18:58:21
ну вроде hmac токен хранить в бд
@fes0r я прав?

Sergey
12.05.2018
18:59:13

Bohdan
12.05.2018
18:59:30
отзыв токена?

Sergey
12.05.2018
18:59:33
HMAC -> hash message authentication code

Bohdan
12.05.2018
19:00:09
ладно, понял, хрень сморозил

Sergey
12.05.2018
19:00:40
https://security.stackexchange.com/questions/20129/how-and-when-do-i-use-hmac/20301?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa

Bohdan
12.05.2018
19:00:51
потом ещё раз перечитаю антиjwt-для-сессий статью
и эту тоже

Vladislav
12.05.2018
19:02:27
Та норм jwt

Sergey
12.05.2018
19:02:28
не ну просто для простых кейсов просто bin2hex(openssl_random_pseudo_bytes(32))

Vladislav
12.05.2018
19:02:31
Че вы начинаете )))

Google

Konstantin
12.05.2018
19:02:56
jwt+

Sergey
12.05.2018
19:03:03
ой все

Konstantin
12.05.2018
19:03:13
)))

Sergey
12.05.2018
19:03:22
не, я сам JWT юзаю если что)
и даже без рефреш токенов)

Vladislav
12.05.2018
19:03:31

Bohdan
12.05.2018
19:03:41

Антон
12.05.2018
19:03:55
А как же сессии на сервере?

Sergey
12.05.2018
19:03:57
какжетак
потому знаю что говорю - подавляющему большинство JWT нафиг не упал

Vladislav
12.05.2018
19:04:05

Bohdan
12.05.2018
19:04:11

Антон
12.05.2018
19:04:17
И куки

Konstantin
12.05.2018
19:04:25
куки сессии
абесни зачем они тебе своими словами

Sergey
12.05.2018
19:04:33
Шта
http://cryto.net/~joepie91/blog/2016/06/13/stop-using-jwt-for-sessions/

Konstantin
12.05.2018
19:04:52
не ну вот смари
у мня есть реальный кейс обсудить

Sergey
12.05.2018
19:05:11
https://scotch.io/bar-talk/why-jwts-suck-as-session-tokens
вот тут как-то проще описано

Google

Konstantin
12.05.2018
19:05:39
есть карочи юзер, назовем его мерчендайзер, он ходит по магазам расставляет товары. сегодня в одном магазине завтра в другом

Vladislav
12.05.2018
19:05:40

Konstantin
12.05.2018
19:05:48
в каждом магазе есть устройство-клиент апишки

Sergey
12.05.2018
19:05:50

Konstantin
12.05.2018
19:05:59
при входе мерч указывает логин пароль и магаз в который он логинится
теперь вопрос - где хранить ид магаза
я пакую в jwt его, еще какие варианты?
rest, не забываем )

Sergey
12.05.2018
19:06:27

Konstantin
12.05.2018
19:06:42
ну клиент это аппка, еще не написаная но скоро напишу
выбирает из выпадающего списка пусть

Sergey
12.05.2018
19:06:59

Konstantin
12.05.2018
19:07:04

Vladislav
12.05.2018
19:07:08
Вай нот

Konstantin
12.05.2018
19:07:22

Sergey
12.05.2018
19:07:27
нет именно рест
ой не начинай только... рест у него... с XML небось еще и гипермедиа и ниодной строчкой захардкоженной на клиенте

Vladislav
12.05.2018
19:07:37
Типа token, refresh, user-id или что у тебя там

Konstantin
12.05.2018
19:07:38
не будут же ему приходить заказы с левых магазинов где он был вчера

Google

Konstantin
12.05.2018
19:07:55

Sergey
12.05.2018
19:08:02

Konstantin
12.05.2018
19:08:04
т.е. в токен пакуешь

Vladislav
12.05.2018
19:08:20
Ну засунешь ты его в пейлоад и будет он в бэйс64

Sergey
12.05.2018
19:08:52
откуда я узнаю магазин
- сессия одна на магазин или в рамках сессии можно менять магазины?
- есть ли идентификатор магазина в урле (хост, часть урла)

Konstantin
12.05.2018
19:09:17
задача не так стоит

Sergey
12.05.2018
19:09:35

Konstantin
12.05.2018
19:09:36
пришел новый заказ. надо оповестить на устройство мерчендайзера. как это делать не зная где щас залогинен юзер

Sergey
12.05.2018
19:10:06
пользователь сам подпишется на нее
если через какой-нибудь centrifugo будешь делать можно как раз таки через HMAC к приватному каналу авторизовывать

Konstantin
12.05.2018
19:11:19
а че такая ненависть к жвт обесни

Sergey
12.05.2018
19:12:10
а че такая ненависть к жвт обесни
ненависть ко всему что бездумно юзают. Ну то есть не к конкретно JWT а к тем кто его юзают и советуют всем подряд. Ну и еще мне стыдно что я сам года два назад еще всем его рекламировал

Konstantin
12.05.2018
19:12:44
а сейчас что рекламируешь
hmac? )

Sergey
12.05.2018
19:16:09
bin2hex(openssl_random_pseudo_bytes(32))

Konstantin
12.05.2018
19:17:27
и че мне с этим делать потом
сессии что ли ради этого заводить