Как защитить базу от пользователей?
Написать простенький API, запросы на который будет слать клиентское приложение, ну и соответственно обрабатывать все запросы на защищенном сервере, с него же и делать sql запросы, но уж никак не хранить данные для аутентификации БД прям в коде...
Насколько я понял, у вас двухзвенная архитектура, клиентское приложение коннектится напрямую в БД. А пароль на коннект к БД зашит в исполняемом файле приложения.

Могу предложить два пути.

Разграничивать доступ на уровне БД. Для каждого пользователя создать соответствующего пользователя в БД, а его логин и пароль использовать для соединения с БД. И очень внимательно раздавать права в БД.
Переходить на трехзвенную архитектуру. Добавить сервер приложения, который будет аутентифицировать пользователей и запрашивать данные из БД от их имени. Соединяться с БД он будет под своим логином с полными правами. Пароль будет в конфиге сервера.
