Я скрываю пароль базы данных в datasource.groovy с помощью выполнение
dataSource {
pooled = true
driverClassName = "com.mysql.jdbc.Driver"
username = "root"
password = "q59YgJCdHw3dshwlsa=="
passwordEncryptionCodec = DESCodec
dbname="mydbname"
}
следовало за artilce: http://jira.grails.org/browse/GRAILS-3620
Я запускаю класс кодека groovy отдельно, чтобы получить зашифрованную строку, подобную этой: groovy grails-app / utils / DESCodec.groovy mypassword_string_text.
Но после помещения класса DESCodec в пакет Utility в grails, когда я пытаюсь запустить сервер, он не запускается, а сразу выключается. Он запускается, когда я напрямую ввожу правильный пароль и закомментирую кодек и зашифрованную строку. Я предполагаю, что он не находит класс кодека / что-то еще, чего мне не хватает в конфигурации, например, указание класса кодека требует кавычек или любого изменения пути, или я должен изменить алгоритм, кстати, класс DESCodec является последним классом кодека в ссылка.
Я работаю над тем, чтобы конфигурация была привязана к среде и была внешней, но мне все еще нужно, чтобы пароль был зашифрован здесь, а затем расшифрован перед подключением к базе данных.