在 Squid 代理身份验证期间无法获取代理授权标头作为 HTTP 响应

本文关键字:代理 权标 HTTP 响应 授权 身份验证 Squid 获取 | 更新日期: 2023-09-27 18:33:32

我正在尝试通过 squid3 网络代理访问服务总线,并使用 C# 在代理中启用基本身份验证

我正在使用以下代码来设置网络代理

webproxy webproxy = new webproxy("http://weproxyuri:port", false);
webproxy.credentials = new networkcredential("username", "password","domain");
WebRequest.DefaultWebProxy = webProxy

我正在使用以下代码访问服务总线

MessagingFactory messagingFactory =  MessagingFactory.CreateFromConnectionString(connectionstring);
QueueClient queueSendClient = messagingFactory.CreateQueueClient(queuename);
var bm1 = queueSendClient.Peek();

服务总线的访问失败并显示错误 - X.509 证书 CN=servicebus.windows.net 不在受信任的人员存储中

在代理日志中,我看到 1454679317.842 0 10.168.84.150 TCP_DENIED/407 4046 获取 http://www.microsoft.com/pki/mscorp/msitwww2.crt - HIER_NONE/- 文本/HTML

在网络跟踪中,我看到主机首先尝试连接到 http://www.microsoft.com/pki/mscorp/msitwww2.crt 它试图在没有身份验证的情况下进行连接,然后代理说 HTTP/1.1 407 代理身份验证需要作为对此请求的响应 理想情况下,主机应该使用包含用户名和密码的代理授权标头重新发送请求,但我看到一个奇怪的行为,主机没有第二次发送代理授权标头

需要设置任何注册表项?

我正在使用Windows Core 2012 R2作为主机

在 Squid 代理身份验证期间无法获取代理授权标头作为 HTTP 响应

此问题

已在 3.0.50496.1 或更高版本的 Microsoft.ServiceBus 中修复.dll