认证问题 [英] authentication issue
问题描述
大家好,
我正在使用Windows Integrated身份验证访问网站.我和Web服务器在使用IIS 6.0的同一个域中.服务器在Windows Server 2003上运行,客户端在Windows Vista上运行.
在使用以下代码段时,始终会出现401错误和异常.但是,当我使用System.Net.CredentialCache.DefaultCredentials时,代码将成功运行.任何想法有什么问题吗?
Hello everyone,
I am accessing a web site using Windows Integrated authentication. I and the web server are in the same domain using IIS 6.0. Server runs on Windows Server 2003 and the client runs on Windows Vista.
When using the following code segment, there is always 401 error and exception. But when I am using the System.Net.CredentialCache.DefaultCredentials, the code runs successfully. Any ideas what is wrong?
<br /> try<br /> {<br /> HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://TestWeb/Monitor");<br /> <br /> NetworkCredential myCred = new NetworkCredential("domain\\user", "mypass");<br /> CredentialCache myCredentialCache = new CredentialCache();<br /> myCredentialCache.Add(new Uri("http://TestWeb/Monitor"), "NTLM", myCred);<br /> req.Credentials = myCredentialCache;<br /><br /> req.ContentType = "text/xml";<br /> req.Method = "GET";<br /> req.Accept = "text/xml";<br /><br /> WebResponse resp = req.GetResponse();<br /> StreamReader sr = new StreamReader(resp.GetResponseStream());<br /> Console.Write(sr.ReadToEnd()); //Just output XML response<br /> }<br /> catch (Exception ex)<br /> {<br /> Console.WriteLine(ex.ToString());<br /> }<br />
先谢谢了,
George
thanks in advance,
George
推荐答案
NetworkCredential myCred = new NetworkCredential("domain \\ user","mypass");
NetworkCredential myCred = new NetworkCredential("domain\\user", "mypass");
尝试使用3个参数的构造函数.似乎可能会在域部分造成混乱.
Try the constructor taking 3 arguments. Seems it might mess up on the domain part.
这篇关于认证问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!