Ответ 1
Все ли драйверы jdbc поддерживают соединение ssl с сервером db, а использование ssl зависит только от конкретного поставщика db?
Поддержка SSL/TLS не предусмотрена в спецификации JDBC. Поэтому вы не можете ожидать этого в каждом драйвере.
Конфигурация SSL на сервере базы данных может быть выведена из URL-адреса JDBC, но это не должно быть детерминированным. В случае Oracle, если вы заметили, что URL-адрес содержит строку подключения, которая указывает, что используемый протокол является TCPS вместо TCP, что указывает на использование SSL/TLS. Если вы делаете это для проверки конфигурации безопасности, я бы назвал вас sloppy.
Неразумно проверять только конфигурацию клиента, чтобы определить, принимает ли сервер базы данных соединения через SSL, особенно если не SSL-соединения запрещены. Механизмы проверки конфигурации SSL/TLS будут отличаться от базы данных к базе данных, но в каждом случае будут созданы соответствующие руководства по безопасности для настройки базы данных.
Если вы хотите выполнить быстрый тест, чтобы проверить, не связано ли соединение с SSl/TLS, все, что вам нужно знать, это то, что защищенные соединения SSL/TLS инициируются с помощью рукопожатия. Если вы его не видите, ваш драйвер не использует SSL/TLS. Для этого вам нужно обнюхать сетевой трафик (убедитесь, что у вас есть разрешение на это). Разумеется, потребовалось бы больше времени, чтобы установить случай, если пул соединений использовался, так как физические соединения в пуле могут быть повторно использованы повторно (без установки новых подключений). Аналогично, вы также можете найти nmap, чтобы быть полезным, но я никогда не использовал его для этой цели.