Azure Key Vault .NET: proxybeállítások titkokhoz és tokenkérésekhez
Ugyanazt az Azure Core átvitelt rendelje a SecretClientOptions és a ClientSecretCredentialOptions objektumhoz, mielőtt bármelyik kérési útvonal elindul.
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
});Használja az alkalmazás valódi vaultUrl, tenantId, clientId és clientSecret értékeit. A két Transport = transport hozzárendelés szándékos: az egyik a tokenbeszerzést, a másik a Key Vault titokkéréseket irányítja.
Tartsa a vaultUrl értéket a tényleges tároló-végpontként. A kezelő WebProxy objektuma tartja a közvetítőt; nyilvános HTTP-jelöltek érhetők el a HTTP-proxylistán, ha a tároló hálózati házirendje engedi ezt az útvonalat; a kliensek létrehozása előtt állítsa be a Credentials értékét, ha a hálózat megköveteli.
Használja újra az átvitelt a kliensek terheléséhez, és állítsa le a saját erőforrásokat leállításkor. A sikeres proxykapcsolat útvonalat hoz létre, de a Key Vault hálózati és hozzáférési házirendjei továbbra is eldöntik, hogy az alkalmazás olvashatja-e a titkot.