Я новичок в Spring JPA/jHipster. Мой вопрос навеян jHipster разговора Жюльен Дюбуа: https://youtu.be/R3jm2qmqctI?t=43m7sКак предотвратить вредоносный ввод в Spring JPA + Spring REST + jHipster
Предположим, у вас есть счет в банке с операциями на нем (+ 100 $ для ресторана, -50 $ ATM, ...) Каждый банковский счет имеет владелец конечно.
Полезная нагрузка вызова POST REST, который создает операцию может выглядеть следующим образом: { "сумма": 100, "Описание": "ресторан", "ВагЛАссоипЬ": { "ID": 1136}}
Идентификатор bankaccount уникален и (ради этого примера) был бы отправлен мне ранее через другой вызов REST.
К сожалению, ничто не мешает злоумышленнику изменить это значение. Можно было просто угадать идентификатор банковского счета, принадлежащего кому-то другому, и затем операция будет добавлена к этому.
Я еще не видел примеры, которые справляются с этой проблемой.
Должен ли я явно проверить, принадлежит ли банковский счет пользователю? Я предполагаю, что этот тип проверки может каскадироваться через все ваши сущности, вызывая много дополнительных вызовов. Может, мне что-то не хватает?
Спасибо, Энди
Нашел интересную статью, которая поддерживает мои заботы;) у нее даже есть имя, это называется прямой ссылкой на объект или атаку DOR: http://www.jtmelton.com/tag/direct-object-reference/ –