application.run-ന് മുമ്പ് Spring Cloud Vault-ന്റെ പ്രോക്സി ഫാക്ടറി ഇൻസ്റ്റാൾ ചെയ്യുക
ConfigData ആക്സസിനായി bootstrap രജിസ്ട്രി ഹുക്ക് ഉപയോഗിക്കുക; സാധാരണ ആപ്ലിക്കേഷൻ ബീനുകൾ ഉണ്ടാകുന്നതിന് മുമ്പും ഇത് സംഭവിക്കാം.
Vault ConfigData നൽകുമ്പോൾ, അതിന്റെ ആദ്യ അഭ്യർത്ഥന സാധാരണ പ്രോക്സി-കസ്റ്റമൈസർ ബീൻ ഉണ്ടാകുന്നതിന് മുമ്പ് സംഭവിക്കാം. പകരം 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 അഭ്യർത്ഥനയ്ക്ക് ആവശ്യമായ പാത ആപ്ലിക്കേഷന് കണ്ടെത്താൻ കഴിയില്ല.