Каков наилучший способ шифрования / дешифрования параметров строки запроса в Java Spring Web MVC? - PullRequest
1 голос
/ 22 сентября 2019

У меня есть веб-проект Spring MVC, уже развернутый в рабочей среде и запущенный.Он имеет много HTML-форм и многие конечные точки в контроллере имеют запрос GET с параметрами строки запроса.

Например: http://www.examplesite.com/user?userId=123

Мы используемБаза данных MySQL.В приведенном выше примере строка запроса userId ' 123 является первичным ключом таблицы mysql .Так как это целочисленное значение, оно может быть легко изменено любым пользователем, и он может видеть данные, которые он не должен видеть.

Мне нужно зашифровать 123 для некоторой случайной строки(например, abcrtxjfojgo33joijo3 или что-то в этом роде).

Проблема в том, что проект уже развернут, и для изменения параметров строки запроса с Integer на String потребуется слишком много изменений в моих представлениях, контроллерах и даже в службах, и это совсем не осуществимо для меня в этомstage.

Есть ли какой-нибудь возможный и надежный способ получения целочисленного запроса Строки шифруются перед отправкой в ​​View и снова дешифруются при получении в контроллере?

Примечание: Это не повторяющийся вопрос "КАК ЗАПИСАТЬ / ДЕКРИПРОВАТЬ QUERY STRING PARAMS?"вопрос.

Пожалуйста, прочитайте мои вопросы, прежде чем пометить их как дубликаты.

...