Azure Key Vault .NET: ustawienia serwera proxy dla wpisów tajnych i żądań tokenów
Przypisz ten sam transport Azure Core do SecretClientOptions i ClientSecretCredentialOptions przed rozpoczęciem którejkolwiek z dwóch ścieżek żądania.
var handler = new System.Net.Http.HttpClientHandler
{
UseProxy = true,
Proxy = new System.Net.WebProxy(
"http://proxy.example.net:8080")
};
var transport = new Azure.Core.Pipeline.HttpClientTransport(handler);
var credential = new Azure.Identity.ClientSecretCredential(
tenantId, clientId, clientSecret,
new Azure.Identity.ClientSecretCredentialOptions
{
Transport = transport
});
var vault = new Azure.Security.KeyVault.Secrets.SecretClient(
new Uri(vaultUrl),
credential,
new Azure.Security.KeyVault.Secrets.SecretClientOptions
{
Transport = transport
});Użyj rzeczywistych vaultUrl, tenantId, clientId i clientSecret aplikacji. Dwa przypisania Transport = transport są celowe: jedno kieruje pozyskanie tokenu, a drugie żądania wpisów tajnych Key Vault.
Zachowaj vaultUrl jako rzeczywisty punkt końcowy magazynu. WebProxy programu obsługi przechowuje pośrednika; publiczni kandydaci HTTP są dostępni na liście proxy HTTP, gdy zasady sieci magazynu pozwalają na tę trasę; skonfiguruj jego Credentials przed utworzeniem klientów, jeśli sieć tego wymaga.
Użyj transportu ponownie dla obciążenia klientów i zwolnij posiadane zasoby przy zamykaniu. Udane połączenie przez proxy ustanawia trasę, ale zasady sieci i dostępu Key Vault nadal decydują, czy aplikacja może odczytać wpis tajny.