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 هنوز تعیین می‌کنند که برنامه می‌تواند راز را بخواند یا نه.

مقالات مرتبط