Asenna Spring Cloud Vaultin välityspalvelintehdas ennen application.run-kutsua
Käytä bootstrap-rekisterin koukkua ConfigData-käyttöön, joka voi tapahtua ennen tavallisten sovelluksen beanien olemassaoloa.
Kun Vault toimittaa ConfigDataa, sen ensimmäinen pyyntö voi tapahtua ennen kuin tavallinen välityspalvelimen mukautusbean on olemassa. Asenna pyyntötehdas sen sijaan bootstrap-rekisterin kautta.
Spring Framework 6.1 tai uudemmalle pinolle:
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 olemassa oleva SpringApplication. Lisää tämä alustaja ennen run-kutsua ja säilytä Vaultin URI ja todennusasetukset.
ClientFactoryWrapper tarjoaa tämän tehtaan Vaultin bootstrap-infrastruktuurille; se ei asenna sovelluslaajuista oletusta toisiinsa liittymättömille HTTP-asiakkaille.
Käytä projektin yhteensopivaa Cloud Vault/Boot-riippuvuusjoukkoa. Apache 4 -esimerkkejä ei voi kopioida Spring Framework 6:n Apache 5 -pyyntötehtaaseen.
Aseta välityspalvelimen osoite saataville myös ennen bootstrapia. Julkisesti saatavilla olevalle Vault-palvelimelle reitillä, joka sallii julkiset välityspalvelimet, valitse HTTP-ehdokas HTTP-välityspalvelinluettelosta-luettelosta ennen sovelluksen käynnistymistä. Jos se on tallennettu vain Vaultiin, sovellus ei voi löytää reittiä, jota kyseinen ensimmäinen Vault-pyyntö tarvitsee.