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
    });

Use os vaultUrl, tenantId, clientId e clientSecret reais da aplicación. As dúas asignacións Transport = transport son deliberadas: unha encamiña a obtención do token e a outra as solicitudes de segredos de Key Vault.

Manteña vaultUrl como o punto de conexión real do almacén. O WebProxy do controlador contén o intermediario; hai candidatos HTTP públicos na lista de proxies HTTP cando a política de rede do almacén permite esa ruta; configure os seus Credentials antes de crear os clientes se a rede os esixe.

Reutilice o transporte para a carga dos clientes e libere os recursos propios ao apagar. Unha conexión de proxy correcta establece unha ruta, pero as políticas de rede e acceso de Key Vault seguen decidindo se a aplicación pode ler o segredo.

Artigos relacionados