Как зашифровать / расшифровать столбцы в доменном классе Grails? - PullRequest
3 голосов
/ 15 декабря 2011

Поскольку я хочу представить некоторую защиту данных, мне стало интересно, возможно ли зашифровать / расшифровать определенные столбцы в классе домена Grails и если да, то как проще всего это сделать?

Допустим, у меня есть класс User и я хочу зашифровать номер ssn или номер банковского счета, чтобы они не сохранялись в виде обычного текста в БД. Какой будет наилучший подход?

Ответы [ 4 ]

3 голосов
/ 15 декабря 2011

Пользовательские типы Hibernate могут преобразовываться в другой формат для хранения и прозрачно шифровать столбец.

Вот простая реализация для grails: http://www.redtoad.ca/ataylor/2011/12/encrypting-a-database-column-in-grails/.

3 голосов
/ 15 декабря 2011

Я создал плагин шифрования jasypt для выполнения именно этого.Документы находятся в связанной вики Bitbucket, а также есть слайды из презентации , которую я дал по его использованию.

Это позволяет просто аннотировать классы вашего домена для шифрования на уровне поляв полях, которые вы хотите защитить (по умолчанию с провайдером шифрования Bouncy Castle AES).

1 голос
/ 15 декабря 2011

Переопределите методы get / set для свойства домена, чтобы зашифровать входящий и расшифровывать выходящий.Вам просто нужно выбрать правильный алгоритм шифрования.Очевидно, убедитесь, что вы выбрали тот, который двусторонний.

0 голосов
/ 11 мая 2015
class Login{
        String userId
        String password

static mapping = {
        userId type: GormEncryptedStringType
        password type: GormEncryptedStringType
    }
}

подробнее здесь: - http://www.slideshare.net/tednaleid/grails-jasypt-encryption-plugin

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...