SOCKS għall-konnessjonijiet RabbitMQ li jimblukkaw mhux TLS fi Spring AMQP
Qabbad SocketFactory li taf bil-proxy permezz ta' RabbitConnectionFactoryBean għall-passaġġ tal-konnessjoni AMQP li timblokka mhux TLS.
Għal konnessjoni AMQP li timblokka u mhix TLS, ir-RabbitConnectionFactoryBean ta' Spring tista' tgħaddi fabbrika tas-sockets li taf bis-SOCKS lill-klijent Java ta' RabbitMQ.
Jekk Commons Net diġà disponibbli, ikkonfigura l-factory bean eżistenti qabel l-inizjalizzazzjoni:
var socksProxy = new java.net.Proxy(
java.net.Proxy.Type.SOCKS,
new java.net.InetSocketAddress("proxy.example", 1080));
rabbitFactoryBean.setSocketFactory(
new org.apache.commons.net.DefaultSocketFactory(socksProxy));
rabbitFactoryBean huwa r-RabbitConnectionFactoryBean tal-applikazzjoni. Żomm il-broker host, il-port AMQP, il-kont u s-setup tal-immaniġġjar tal-konnessjonijiet ta' Spring tiegħu. Il-broker jibqa' d-destinazzjoni; is-SocketFactory toħloq is-sockets li jaslu għalih permezz tas-SOCKS. Għal test mhux sensittiv kontra broker pubbliku fejn l-intermedjarji pubbliċi huma permessi, il-lista tal-proxy SOCKS toffri kandidati; qabbel il-verżjoni SOCKS appoġġata mir-runtime u kkonferma l-aċċess għall-broker host u l-port reali.
Il-fabbrika ta' Commons Net toħloq java.net.Socket mhux konness bl-użu tal-Proxy mogħti. Imbagħad il-kodiċi tal-konnessjoni li timblokka ta' RabbitMQ jgħaqqad dak is-socket permezz tal-passaġġ normali tiegħu. L-esportazzjoni biss ta' HTTP_PROXY ma tipprovdix din il-fabbrika tas-sockets AMQP.
RabbitMQ tiddokumenta li l-hook SocketFactory japplika għall-I/O li timblokka. Klijent ikkonfigurat għal NIO jew trasport ieħor jeħtieġ il-hook appoġġat minn dak it-trasport. Għall-AMQPS, żomm fabbrika tas-sockets TLS adattata u verifika tad-destinazzjoni; is-sostituzzjoni tagħha bil-fabbrika sempliċi hawn fuq mhijiex konfigurazzjoni TLS sħiħa.