我的 ASP.NET 2.0 应用程序创建了一个 HTTPWebRequest
,用于访问公司内部网络中使用 NTLM 身份验证的站点。传递的凭据是服务账户的凭据,该服务账户已经成功通过域认证(安全日志确认此事)。
以下是一些缩写代码...
HttpWebRequest req = WebRequest.Create(queryUrl) as HttpWebRequest;
NetworkCredential cred = new NetworkCredential(username,
pwd, domain);
req.Credentials = cred;
HttpWebResponse response = req.GetResponse() as HttpWebResponse;
请求中包含了一些重定向操作(在同一域名下),最终的响应处理在我的开发机器上表现良好(Windows 2k)。
当这个请求从我的部署环境(Windows 2k3)创建时,我从网站得到一个401未经授权的错误返回,似乎是在第一个重定向代码(301 Moved)被返回后,在我的请求对象尝试跟随重定向时发生的。
因此,基本上,有人知道跟随重定向的经过身份验证的HttpWebRequests是否存在任何问题吗?
PS - 显而易见的解决方法是简单地请求被重定向到的页面,但是负责intranet网站的管理员希望通过将我重定向到特定页面来监视我的应用程序的使用情况。