System.Net.WebClient doesn't work with Windows Authentication
        Posted  
        
            by Peter Hahndorf
        on Stack Overflow
        
        See other posts from Stack Overflow
        
            or by Peter Hahndorf
        
        
        
        Published on 2009-06-23T01:10:14Z
        Indexed on 
            2010/06/17
            23:33 UTC
        
        
        Read the original article
        Hit count: 1222
        
I am trying to use System.Net.WebClient in a WinForms application to upload a file to an IIS6 server which has Windows Authentication as it only 'Authentication' method.
WebClient myWebClient = new WebClient();
myWebClient.Credentials = new System.Net.NetworkCredential(@"boxname\peter", "mypassword"); 
byte[] responseArray = myWebClient.UploadFile("http://localhost/upload.aspx", fileName);
I get a 'The remote server returned an error: (401) Unauthorized', actually it is a 401.2
Both client and IIS are on the same Windows Server 2003 Dev machine.
When I try to open the page in Firefox and enter the same correct credentials as in the code, the page comes up. However when using IE8, I get the same 401.2 error.
Tried Chrome and Opera and they both work.
I have 'Enable Integrated Windows Authentication' enabled in the IE Internet options.
The Security Event Log has a Failure Audit:
Logon Failure:
    Reason:		An error occurred during logon
    User Name:	peter
    Domain:		boxname
    Logon Type:	3
    Logon Process:	ÈùÄ
    Authentication Package:	NTLM
    Workstation Name:	boxname
    Status code:	0xC000006D
    Substatus code:	0x0
    Caller User Name:	-
    Caller Domain:	-
    Caller Logon ID:	-
    Caller Process ID:	-
    Transited Services:	-
    Source Network Address:	127.0.0.1
    Source Port:	1476
I used Process Monitor and Fiddler to investigate but to no avail.
Why would this work for 3rd party browsers but not with IE or System.Net.WebClient?
© Stack Overflow or respective owner