SOCKS fyrir blokkarandi RabbitMQ-tengingar án TLS í Spring AMQP
Tengdu proxy-meðvitaða SocketFactory gegnum RabbitConnectionFactoryBean fyrir blokkarandi AMQP-tengingarleiðina án TLS.
Fyrir blokkarandi AMQP-tengingu án TLS getur RabbitConnectionFactoryBean í Spring afhent SOCKS-meðvitaðri socketverksmiðju til RabbitMQ Java-biðlarans.
Ef Commons Net er þegar tiltækt skaltu stilla núverandi factory bean fyrir frumstillingu:
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 er RabbitConnectionFactoryBean forritsins. Haltu broker-hýsilnum, AMQP-gáttinni, reikningnum og uppsetningu Spring á tengistjórnun. Brokerinn er áfram áfangastaðurinn; SocketFactory býr til socketin sem ná til hans gegnum SOCKS. Fyrir ónæma prófun á móti opinberum broker þar sem opinberir milliliðir eru leyfðir býður SOCKS-milliliðalistinn upp á kandídáta; samræmdu SOCKS-útgáfuna sem keyrsluumhverfið styður og staðfestu aðgang að raunverulegri broker-hýsil og -gátt.
Verksmiðja Commons Net býr til ótengt java.net.Socket með tilgreindu Proxy. Blokkarandi tengikóði RabbitMQ tengir síðan það socket á venjulegri tengileið sinni. Eingöngu útflutningur á HTTP_PROXY veitir ekki þessa AMQP-socketverksmiðju.
RabbitMQ skjalfestir að SocketFactory-krókurinn eigi við um blokkarandi I/O. Biðlari sem er stilltur fyrir NIO eða aðra flutninga þarf krókinn sem sá flutningur styður. Fyrir AMQPS skaltu halda viðeigandi TLS-socketverksmiðju og áfangastaðasannprófun; að skipta henni út fyrir einföldu verksmiðjuna hér að ofan er ekki fullkomin TLS-stilling.