Azure Key Vault .NET : paramètres de proxy pour les secrets et les demandes de jetons
Attribuez le même transport Azure Core à SecretClientOptions et ClientSecretCredentialOptions avant de démarrer l'un ou l'autre des deux chemins de requête.
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
});Utilisez les vaultUrl, tenantId, clientId et clientSecret réels de l'application. Les deux affectations Transport = transport sont volontaires : l'une achemine l'obtention du jeton, l'autre les demandes de secrets Key Vault.
Conservez vaultUrl comme point de terminaison réel du coffre. Le WebProxy du gestionnaire porte l'intermédiaire ; des candidats HTTP publics sont disponibles dans la liste de proxys HTTP lorsque la stratégie réseau du coffre autorise cette route ; configurez ses Credentials avant de créer les clients si le réseau l'exige.
Réutilisez le transport pour la charge des clients et libérez les ressources possédées à l'arrêt. Une connexion proxy réussie établit une route, mais les stratégies réseau et d'accès de Key Vault décident toujours si l'application peut lire le secret.