Неге HTTP прокси параметрі PostgreSQL қосылымын түзетпейді
PostgreSQL дерекқор протоколын HTTP маршруттаудан бөліп, SOCKS үшін қажет сокет жолын тексеріңіз.
http.proxyHost қатысатын HTTP клиентін маршруттай алады, бірақ PostgreSQL JDBC үшін ештеңе істемейді. PostgreSQL өзінің дерекқор протоколын жібереді, HTTP сұрауын емес.
JDBC қосылым URL әлі де дерекқор сервері мен дерекқорды көрсетуі керек. Оның серверін HTTP прокси мекенжайымен ауыстыру драйверге CONNECT үйрете алмайды.
SOCKS қызметі үшін JDBC астындағы сокет іске асырылуын зерттеңіз. Java қатысатын сокеттер үшін мына іске қосу қасиеттерін ұсынады:
-DsocksProxyHost=203.0.113.10 -DsocksProxyPort=1080Құжаттаманың соңғы нүктесін ауыстырыңыз. Бұлар JVM аргументтері, JDBC URL параметрлері емес. Олардың пайдаланылуын күтпес бұрын нақты JDK/драйвер сокет жолын және кез келген теңшелетін сокет фабрикасын тексеріңіз.
Қасиеттер бүкіл процесс үшін қолданылады, сондықтан әсерді бағалауға басқа қосылымдарды да қосыңыз. Тек дерекқор трафигі осы жолмен жүруі керек болса, құжатталған арнайы коннектор немесе мақұлданған туннель неғұрлым айқын шекара бере алады.
Прокси әлі де дерекқор портына рұқсат пен қолжетімділікті қажет етеді. Содан кейін дерекқор хостқа кіру ережелерін, межелік TLS-ті және өзінің кіруін қолданады. Сертификаттың хост атын сақтаңыз және дерекқор тіркелгісін прокси тіркелгісінен бөлек ұстаңыз.
Бірінші сәтсіз кезеңді жазыңыз: прокси қосылымы, келіссөз, дерекқор TCP, TLS немесе дерекқорға кіру. Бұл дәлел келесі өзгерісті анықтайды; пайдаланылмаған HTTP қасиеттерін қайта-қайта реттеу мұны істей алмайды.