Kui Vault edastab ConfigData't, võib selle esimene päring toimuda enne, kui tavaline puhverserveri kohandaja bean on olemas. Paigaldage päringutehas hoopis bootstrap-registri kaudu.

Spring Framework 6.1 või uuema virna jaoks:

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 on olemasolev SpringApplication. Lisage see initsialiseerija enne run kutsumist, säilitades Vaulti URI ja autentimisseaded.

ClientFactoryWrapper avab selle tehase Vaulti bootstrap-taristule; see ei paigalda rakenduseülest vaikeväärtust mitteseotud HTTP-klientidele.

Kasutage projekti ühilduvat Cloud Vault/Boot sõltuvuste komplekti. Apache 4 näiteid ei saa kopeerida Spring Framework 6 Apache 5 päringutehasesse.

Tehke puhverserveri aadress kättesaadavaks ka enne bootstrap'i. Avalikult kättesaadava Vaulti serveri jaoks marsruudil, mis lubab avalikke puhverservereid, valige enne rakenduse käivitamist HTTP-kandidaat HTTP puhverserverite loendist hulgast. Kui see on salvestatud ainult Vaulti, ei suuda rakendus avastada marsruuti, mida selle esimese Vaulti päringu jaoks vaja on.

Seotud artiklid