application.run-аас өмнө Spring Cloud Vault-ын прокси фабрикийг суулгана уу
ConfigData-д хандахын тулд bootstrap бүртгэлийн дэгээг ашиглана уу; энэ нь ердийн аппликейшн bean-ууд үүсэхээс өмнө тохиолдож болно.
Vault ConfigData нийлүүлэх үед түүний эхний хүсэлт ердийн прокси тохируулагч bean үүсэхээс өмнө тохиолдож болно. Үүний оронд хүсэлтийн фабрикийг bootstrap бүртгэлээр суулгана уу.
Spring Framework 6.1 буюу түүнээс шинэ стект:
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 нь одоо байгаа SpringApplication юм. run-ыг дуудахын өмнө энэ эхлүүлэгчийг нэмж, Vault URI болон баталгаажуулалтын тохиргоог хадгална уу.
ClientFactoryWrapper энэ фабрикийг Vault-ын bootstrap дэд бүтэцэд ил гаргадаг; энэ нь холбоогүй HTTP клиентүүдэд аппликейшн даяарх анхдагч утгыг суулгадаггүй.
Төслийн нийцтэй Cloud Vault/Boot хамаарлын багцыг ашиглана уу. Apache 4-ийн жишээг Spring Framework 6-ын Apache 5 хүсэлтийн фабрикт хуулж болохгүй.
Прокси хаягийг bootstrap-аас өмнө ч боломжтой болго. Нийтэд нээлттэй Vault серверийн хувьд нийтийн прокси зөвшөөрдөг маршрут дээр аппликейшн эхлэхээс өмнө HTTP прокси жагсаалтаас-аас HTTP нэр дэвшигчийг сонго. Хэрэв зөвхөн Vault-д хадгалагддаг бол аппликейшн тэр эхний Vault хүсэлтэд шаардлагатай маршрутыг олж чадахгүй.