Kur Vault furnizon ConfigData, kërkesa e tij e parë mund të ndodhë përpara se të ekzistojë një bean i zakonshëm për personalizimin e proxy-t. Në vend të kësaj, instaloni fabrikën e kërkesave përmes regjistrit bootstrap.

Për një stack Spring Framework 6.1 ose më të ri:

import java.net.InetSocketAddress;
import java.net.ProxySelector;
import java.net.http.HttpClient;
import org.springframework.http.client.JdkClientHttpRequestFactory;
import org.springframework.vault.config.AbstractVaultConfiguration
    .ClientFactoryWrapper;

var http = HttpClient.newBuilder()
    .proxy(ProxySelector.of(
        new InetSocketAddress("proxy.example.net", 8080)))
    .build();

application.addBootstrapRegistryInitializer(registry ->
    registry.register(ClientFactoryWrapper.class, context ->
        new ClientFactoryWrapper(
            new JdkClientHttpRequestFactory(http))));

application është SpringApplication ekzistues. Shtoni këtë inicializues përpara se të thërrisni run, duke ruajtur URI-n e Vault dhe cilësimet e vërtetimit.

ClientFactoryWrapper e ekspozon këtë fabrikë ndaj infrastrukturës bootstrap të Vault; ai nuk instalon një parazgjedhje në nivel aplikacioni për klientët HTTP të palidhur.

Përdorni grupin e varësive të pajtueshme Cloud Vault/Boot të projektit. Shembujt për Apache 4 nuk mund të kopjohen në fabrikën e kërkesave Apache 5 të Spring Framework 6.

Bëni adresën e proxy-t të disponueshme edhe përpara bootstrap. Për një server Vault të aksesueshëm publikisht në një rrugë që lejon proxy publike, zgjidhni një kandidat HTTP nga lista e proxy-ve HTTP përpara se aplikacioni të nisë. Nëse ruhet vetëm në Vault, aplikacioni nuk mund të zbulojë rrugën e nevojshme për atë kërkesë të parë drejt Vault.

Artikuj të ngjashëm