В моем текущем проекте я работаю над подключением к базе данных MySQL с использованием Java.
У меня есть немного кода, в котором я использую Gradle для замены конфиденциальных учетных данных базы данных в файл .java, используя ReplaceTokens, чтобы заполнить новую версию файла в каталоге сборки и получить исходную версию (с заменой). детоксицированные "значения), чтобы скомпилировать файл .class.
Я не ожидаю, что кто-то кроме основной команды разработчиков будет работать с исходными файлами .java, кроме .war, который содержит скомпилированные файлы .class. Однако, посмотрев на эти файлы .class с помощью vim, я могу сказать, что детоксицированные значения четко видны в скомпилированном байт-коде.
Мой вопрос таков: Если предположить, что мои файлы .class могут быть извлечены с сервера потенциально вредоносным агентом, есть ли лучший способ токенизации, который обеспечил бы еще один уровень безопасности для учетных данных базы данных?
Для получения дополнительной информации доступ к БД MySQL возможен только через сокет, поэтому я не ожидаю, что злонамеренный агент сможет что-либо сделать с одними только учетными данными БД, но я бы все же хотел усложнить определение этих учетных данных. .
Спасибо за любой совет! Я все еще очень плохо знаком с Java и Gradle в целом, но этот проект уже дал мне много понимания того, что можно сделать.