Azure Key Vault .NET: configuració del proxy per a secrets i sol·licituds de testimonis
Assigneu el mateix transport d'Azure Core a SecretClientOptions i ClientSecretCredentialOptions abans d'iniciar qualsevol dels dos camins de sol·licitud.
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
});Feu servir els vaultUrl, tenantId, clientId i clientSecret reals de l'aplicació. Les dues assignacions Transport = transport són deliberades: una encamina l'obtenció del testimoni i l'altra les sol·licituds de secrets del Key Vault.
Manteniu vaultUrl com a punt final real del magatzem. El WebProxy del gestor conté l'intermediari; hi ha candidats HTTP públics a la llista de proxies HTTP quan la política de xarxa del magatzem permet aquesta ruta; configureu-ne les Credentials abans de crear els clients si la xarxa les requereix.
Reutilitzeu el transport per a la càrrega dels clients i allibereu els recursos propis en tancar. Una connexió proxy correcta estableix una ruta, però les polítiques de xarxa i d'accés del Key Vault encara decideixen si l'aplicació pot llegir el secret.