Azure Key Vault .NET: setări de proxy pentru secrete și cereri de token
Atribuiți același transport Azure Core pentru SecretClientOptions și ClientSecretCredentialOptions înainte de a începe oricare dintre cele două căi de cerere.
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
});Folosiți vaultUrl, tenantId, clientId și clientSecret reale ale aplicației. Cele două atribuiri Transport = transport sunt intenționate: una dirijează obținerea tokenului, cealaltă cererile de secrete Key Vault.
Păstrați vaultUrl ca punct final real al seifului. WebProxy handlerului conține intermediarul; candidați HTTP publici sunt disponibili în lista de proxy HTTP când politica de rețea a seifului permite acea rută; configurați Credentials înainte de a crea clienții dacă rețeaua le cere.
Reutilizați transportul pentru sarcina clienților și eliberați resursele deținute la oprire. O conexiune proxy reușită stabilește o rută, dar politicile de rețea și de acces ale Key Vault decid în continuare dacă aplicația poate citi secretul.