http.proxyHost môže smerovať zúčastneného HTTP klienta, ale pre PostgreSQL JDBC nerobí nič. PostgreSQL posiela svoj databázový protokol, nie požiadavku HTTP.

URL pripojenia JDBC musí stále uvádzať databázový server a databázu. Nahradenie servera adresou HTTP proxy nemôže ovládač naučiť príkaz CONNECT.

Pri službe SOCKS preskúmajte implementáciu socketu pod JDBC. Java sprístupňuje tieto spúšťacie vlastnosti pre zúčastnené sockety:

-DsocksProxyHost=203.0.113.10 -DsocksProxyPort=1080

Nahraďte koncový bod z dokumentácie. Sú to argumenty JVM, nie parametre URL JDBC. Pred očakávaním, že ich použije, overte skutočnú cestu socketu JDK/ovládača a prípadnú vlastnú továreň socketov.

Vlastnosti platia pre celý proces, preto do posúdenia vplyvu zahrňte aj ďalšie pripojenia. Dokumentovaný vyhradený konektor alebo schválený tunel môžu poskytnúť jasnejšiu hranicu, keď má touto cestou prechádzať len databázová prevádzka.

Proxy stále potrebuje oprávnenie a dosiahnuteľnosť portu databázy. Databáza potom uplatní pravidlá prístupu hostiteľa, TLS cieľa a vlastné prihlásenie. Zachovajte názov hostiteľa certifikátu a účet databázy držte oddelene od účtu proxy.

Zaznamenajte prvú neúspešnú fázu: pripojenie k proxy, vyjednávanie, TCP databázy, TLS alebo prihlásenie do databázy. Tieto dôkazy určia ďalšiu zmenu; opakované ladenie nepoužívaných vlastností HTTP to nedokáže.

Súvisiace články