Size: a a a

Software Design/Architecture/Zen

2021 February 02

ПГ

Павел Г. in Software Design/Architecture/Zen
Artem Zakirullin
Подписывай формочку доставки токеном заказа с сикректсом на сервере, не знаю) Если так левые записи напрягают
JWT, достал JWT из браузера и начинаю долбить им по эндпоинту доставки с рандомными ID заказа
источник

AZ

Artem Zakirullin in Software Design/Architecture/Zen
Павел Г.
JWT, достал JWT из браузера и начинаю долбить им по эндпоинту доставки с рандомными ID заказа
Как ты начинаешь долбить им с разным id, если JWT выдает неподконтрольная тебе строна?
источник

AZ

Artem Zakirullin in Software Design/Architecture/Zen
У JWT есть claims, там будет твой id
источник

AZ

Artem Zakirullin in Software Design/Architecture/Zen
с рандомным id не сработает - токен не пройдет валидацию
источник

ПГ

Павел Г. in Software Design/Architecture/Zen
Artem Zakirullin
Как ты начинаешь долбить им с разным id, если JWT выдает неподконтрольная тебе строна?
заказ не в jwt вшит
источник

AZ

Artem Zakirullin in Software Design/Architecture/Zen
Павел Г.
заказ не в jwt вшит
Я не понимаю, какую проблему нужно решать :)

Не хочешь появления запросов на доставку перед оплатой заказа - с сервера отдавай order_id + ':' + sha256(order_id + secret)

Опять же, к user id можно заказ/доставку привязывать, и нет никаких токенов
источник

AZ

Artem Zakirullin in Software Design/Architecture/Zen
Но это довольно странно - я бы не парился, ну пусть будет хоть 1к там записей лежит, что с того
источник

AB

Alex Bespalov in Software Design/Architecture/Zen
Какая то не очень понятная история. На сервере есть данные. Есть FK, есть статусы. За ради чистоты кода разобьем контексты так, что можно сохранять мусор в системе, а еще можно и jwt/sha256 и т.д. обмазаться? В итоге проще станет или еще сложнее с кажущейся простотой на уровне контекстов?
источник

ПГ

Павел Г. in Software Design/Architecture/Zen
Artem Zakirullin
Я не понимаю, какую проблему нужно решать :)

Не хочешь появления запросов на доставку перед оплатой заказа - с сервера отдавай order_id + ':' + sha256(order_id + secret)

Опять же, к user id можно заказ/доставку привязывать, и нет никаких токенов
Ну это не лакончино :)
Проблема наверное -  надо почитать, что Сергей скинул и еще что-то на тему микро, видимо какого то золотого простого решения нет, который всё бы решало разом
источник

AZ

Artem Zakirullin in Software Design/Architecture/Zen
Павел Г.
Ну это не лакончино :)
Проблема наверное -  надо почитать, что Сергей скинул и еще что-то на тему микро, видимо какого то золотого простого решения нет, который всё бы решало разом
>  какого то золотого простого решения нет

Его нет никогда
источник

ПГ

Павел Г. in Software Design/Architecture/Zen
Alex Bespalov
Какая то не очень понятная история. На сервере есть данные. Есть FK, есть статусы. За ради чистоты кода разобьем контексты так, что можно сохранять мусор в системе, а еще можно и jwt/sha256 и т.д. обмазаться? В итоге проще станет или еще сложнее с кажущейся простотой на уровне контекстов?
Вот хочется, чтобы было "хорошо" , без лишних проблем :) Может и FK вернуть, а может и что-то другое.
источник

AB

Alex Bespalov in Software Design/Architecture/Zen
У вас же наверняка есть условно your-product.com/api и в этом апи заказы, доставка и т.д. внутри в коде есть разные контексты, на входящие запросы можно валидировать то что пытаются прислать
источник

AZ

Artem Zakirullin in Software Design/Architecture/Zen
Павел Г.
Ну это не лакончино :)
Проблема наверное -  надо почитать, что Сергей скинул и еще что-то на тему микро, видимо какого то золотого простого решения нет, который всё бы решало разом
Многие другие ссылки Сергея тоже неплохо было бы почитать :)
источник

ПГ

Павел Г. in Software Design/Architecture/Zen
Artem Zakirullin
Многие другие ссылки Сергея тоже неплохо было бы почитать :)
Это да, он молодец :)
источник

ПГ

Павел Г. in Software Design/Architecture/Zen
Всем спасибо, буду читать и искать свою середину :)
источник

СА

Станислав Алексеев... in Software Design/Architecture/Zen
всем привет, подскажите, пожалуйста. Есть обработчик очереди RabbitMQ. Сообщение обрабатывается по шагам, эти шаги хранятся в памяти. Во время обработки сообщения может возникнуть так называемая "восстанавливаемая" ошибка, т.е. при повторном запуске с последнего шага ошибка может не произойти(например, таймаут обработки).
Я вижу 2 варианта решения проблемы:
1) сделать nack с флагом requeue (но в таком случае нужно в тело сообщения записать информацию по последнему завершённому шагу, пока не разобрался как это сделать)

2) кинуть в очередь новое сообщение и в нём уже указать шаг, на котором остановились

Как правильнее будет поступить в этом случае?
источник

DE

Dmitry Eliseev in Software Design/Architecture/Zen
Станислав Алексеев
всем привет, подскажите, пожалуйста. Есть обработчик очереди RabbitMQ. Сообщение обрабатывается по шагам, эти шаги хранятся в памяти. Во время обработки сообщения может возникнуть так называемая "восстанавливаемая" ошибка, т.е. при повторном запуске с последнего шага ошибка может не произойти(например, таймаут обработки).
Я вижу 2 варианта решения проблемы:
1) сделать nack с флагом requeue (но в таком случае нужно в тело сообщения записать информацию по последнему завершённому шагу, пока не разобрался как это сделать)

2) кинуть в очередь новое сообщение и в нём уже указать шаг, на котором остановились

Как правильнее будет поступить в этом случае?
2
источник

СА

Станислав Алексеев... in Software Design/Architecture/Zen
спасибо
источник

DK

Denis Ko in Software Design/Architecture/Zen
Всем привет. Подскажите пожалуйста жертве soap и тп rpc, как с точки зрения rest правильно: есть профиль, он зашифрован(dpo). Как правильно показывать маскированный данные и полные(хозяину или ДПО офицеру): /{profile_uid}?unmask=true|false или /{profile_uid}[/unmask]
источник

SP

Sergey Protko in Software Design/Architecture/Zen
Denis Ko
Всем привет. Подскажите пожалуйста жертве soap и тп rpc, как с точки зрения rest правильно: есть профиль, он зашифрован(dpo). Как правильно показывать маскированный данные и полные(хозяину или ДПО офицеру): /{profile_uid}?unmask=true|false или /{profile_uid}[/unmask]
Как удобно так и правильно.
источник