Я скрываю пароль базы данных в 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 codec отдельно, чтобы получить зашифрованную строку следующим образом: groovy grails-app/utils/DESCodec.groovy mypassword_string_text.
Но после размещения класса DESCodec в пакете Utility в grails, когда я пытаюсь запустить сервер, он не запускается, а напрямую выключается. Он запускается, когда я прямо устанавливаю правильный пароль и комментирую кодек и зашифрованную строку. Я предполагаю, что он не находит класс кодека/что-то еще, отсутствующее в конфигурации, например, для определения класса кодека требуются кавычки или любое изменение пути, или я должен изменить алгоритм, кстати, класс DESCodec является последним классом кодека в ссылка.
Я работаю над тем, чтобы конфигурация была специфичной для среды и экстернализована, но мне все еще нужен пароль, который нужно зашифровать здесь, а затем дешифровать перед подключением к базе данных.