GORM не возвращает данные при запросе таблицы, содержащей столбец, зашифрованный с помощью Jasypt. (Grails)

#encryption #grails #jasypt

#шифрование #grails #jasypt

Вопрос:

Я использовал jasypt для шифрования столбца в базе данных, теперь, когда я запрашиваю эту таблицу с этим столбцом, используя (GORM) findBy или создавая критерии, я не получаю никаких результатов. Шифрование выполняется на уровне домена.

статическое сопоставление = { тип значения: GormEncryptedStringType }

Комментарии:

1. выполнять поиск по зашифрованному столбцу — плохая практика.

2. да, я понимаю, но это требование в сценарии. возможно ли это в любом случае?

3. Это было то, что я изучал в прошлом году и столкнулся с теми же проблемами. Короткий ответ — нет — пожалуйста, просмотрите этот проект github.com/vahidhedayati/grails-encrypt-db-fields . Пожалуйста, не стесняйтесь загружать и возиться, как вы чувствуете. Но без прямого перехода, т.Е. Сначала получения объектов, которые проходят через какое-либо преобразование, которое нужно расшифровать, что потенциально может быть слишком дорогим в зависимости от размера БД

4. @Vahid — Большое спасибо! Пройдет через это.