Гэтая паслядоўнасць выглядае яўнай, але ў .NET 10 яна завяршаецца без уліковых даных проксі:

proxy.Credentials = new NetworkCredential(proxyUser, proxyPassword);
proxy.UseDefaultCredentials = false;

У рэалізацыі WebProxy у .NET 10 усталяванне UseDefaultCredentials у false прысвойвае Credentials значэнне null. Усталяванне ў true выбірае CredentialCache.DefaultCredentials. Абедзве ўласцівасці кіруюць адным і тым жа выбарам уліковага запісу.

Для ўліковага запісу, спецыфічнага для службы, прызначце патрэбныя ўліковыя даныя без наступнага скіду:

var proxy = new WebProxy("http://proxy.example.net:8080")
{
    Credentials = new NetworkCredential(proxyUser, proxyPassword)
};

Калі існуючы код наладкі павінен яўна адключыць уліковыя даныя па змаўчанні, зрабіце гэта перад прызначэннем NetworkCredential. Яго getter можа быць false, хоць яўныя ўліковыя даныя прысутнічаюць правільна; false не абавязкова азначае, што ўліковы запіс не наладжаны.

Далучыце гэты аб'ект да апрацоўшчыка, які выконвае запыт. Для інтэграванай аўтэнтыфікацыі Windows замест гэтага свядома выберыце ўліковыя даныя па змаўчанні, выкарыстоўваючы адпаведную ідэнтычнасць працэсу.

Праверце парадак ініцыялізатара аб'екта і дапаможныя метады на прадмет наступных прызначэнняў, якія замяняюць патрэбны ўліковы запіс. Прывязайце гэтую дыягностыку да рэалізацыі WebProxy, якая выкарыстоўваецца; аднайменная ўласцівасць у апрацоўшчыку HTTP можа кіраваць іншай вобласцю аўтэнтыфікацыі.

Падобныя артыкулы