СУБД представлена в ситуации Catch-22:
- Когда пользователь запускает определенную программу JDBC для доступа к базе данных, пусть он делает свое дело.
- Когда пользователь запускает любую другую программу JDBC для доступа к базе данных, не позволяйте ей делать свое дело.
Как СУБД может определить разницу между двумя программами? Что касается этого, то они оба являются клиентами, которые используют правильный протокол для связи с СУБД и идентифицировали себя как законного пользователя базы данных.
Чтобы это сработало, вы должны найти необратимый способ различения двух приложений. Это не тривиально, если не сказать больше.
Есть клуджи, но нет чистого решения. Это общая проблема, с которой сталкивается любая СУБД, когда проблема представлена в вопросе.