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

एप्लिकेशन के वास्तविक vaultUrl, tenantId, clientId और clientSecret उपयोग करें। दो Transport = transport असाइनमेंट जानबूझकर हैं: एक टोकन प्राप्ति और दूसरा Key Vault सीक्रेट अनुरोधों को रूट करता है।

vaultUrl को वास्तविक वॉल्ट एंडपॉइंट रखें। हैंडलर का WebProxy मध्यस्थ रखता है; जब वॉल्ट की नेटवर्क नीति उस मार्ग की अनुमति देती है तो HTTP प्रॉक्सी सूची में सार्वजनिक HTTP उम्मीदवार उपलब्ध होते हैं; यदि नेटवर्क को आवश्यकता हो तो क्लाइंट बनाने से पहले उसके Credentials कॉन्फ़िगर करें।

क्लाइंट के कार्यभार के लिए ट्रांसपोर्ट का पुनः उपयोग करें और शटडाउन पर स्वामित्व वाले संसाधन मुक्त करें। सफल प्रॉक्सी कनेक्शन एक मार्ग स्थापित करता है, परंतु Key Vault की नेटवर्क और एक्सेस नीतियाँ अब भी तय करती हैं कि एप्लिकेशन सीक्रेट पढ़ सकता है या नहीं।

संबंधित लेख