Ik probeer vanaf mijn asp.net site een XML bestand te posten naar een andere website.
Die site gebruikt Active Directory integrated security, en daar lijk ik niet doorheen te komen.
Als ik de juiste inloggegevens gebruik, krijg ik melding "(401) Unauthorized"
Als ik onjuiste inloggegevens gebruik, krijg ik de melding "The login attempt failed"
Ik heb de volgende code gebruikt:
Ik heb getest door naar een niet bestaande pagina te proberen te posten, en in plaats van een 404, krijg ik dan nog steeds de 401 terug.
Iemand een suggestie? Ik wordt hier zelf knettergek van...
Edit:
Zie nu pas dat de stack trace anders is bij een foutief wachtwoord:
Foutief wachtwoord
Bij correct wachtwoord, krijg ik alleen de WebException, dus ik gok dat IIS lokaal ook het wachtwoord al probeert ofzo?
Nog knetterdergek nu
Die site gebruikt Active Directory integrated security, en daar lijk ik niet doorheen te komen.
Als ik de juiste inloggegevens gebruik, krijg ik melding "(401) Unauthorized"
Als ik onjuiste inloggegevens gebruik, krijg ik de melding "The login attempt failed"
Ik heb de volgende code gebruikt:
Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| Const hostname As String = "http://hostname/pagina.asp" Const Username As String = "loginnaam" Const Pass As String = "wachtwoord" Const Domain As String = "domeinnaam" Dim web As New System.Net.WebClient() 'Dim web As New System.Net.HttpWebRequest 'worksn't web.Headers.Add("Content-Type", "multipart/form-data") Dim d As Byte() = System.Text.Encoding.ASCII.GetBytes(Me.GetXMLstring) ' Dim nc As New System.Net.NetworkCredential ' Dim cc As New System.Net.CredentialCache ' cc.Add(New Uri(hostname), "Kerberos", New System.Net.NetworkCredential(Username, Pass, Domain)) 'web.UseDefaultCredentials = True 'web.Credentials = cc web.Credentials = New System.Net.NetworkCredential(Username, Pass, Domain) 'web.UseDefaultCredentials = True Dim res As Byte() = web.UploadData(hostname, d) |
Ik heb getest door naar een niet bestaande pagina te proberen te posten, en in plaats van een 404, krijg ik dan nog steeds de 401 terug.
Iemand een suggestie? Ik wordt hier zelf knettergek van...
Edit:
Zie nu pas dat de stack trace anders is bij een foutief wachtwoord:
Foutief wachtwoord
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| [Win32Exception (0x80004005): The logon attempt failed] System.Net.NTAuthentication.GetOutgoingBlob(Byte[] incomingBlob, Boolean throwOnError, SecurityStatus& statusCode) +1404866 System.Net.NTAuthentication.GetOutgoingBlob(String incomingBlob) +78 System.Net.NegotiateClient.DoAuthenticate(String challenge, WebRequest webRequest, ICredentials credentials, Boolean preAuthenticate) +560 System.Net.NegotiateClient.Authenticate(String challenge, WebRequest webRequest, ICredentials credentials) +14 System.Net.AuthenticationManager.Authenticate(String challenge, WebRequest request, ICredentials credentials) +247 System.Net.AuthenticationState.AttemptAuthenticate(HttpWebRequest httpWebRequest, ICredentials authInfo) +243 System.Net.HttpWebRequest.CheckResubmitForAuth() +232 System.Net.HttpWebRequest.CheckResubmit(Exception& e) +5300691 [WebException: The remote server returned an error: (401) Unauthorized.] System.Net.WebClient.UploadDataInternal(Uri address, String method, Byte[] data, WebRequest& request) +302 System.Net.WebClient.UploadData(Uri address, String method, Byte[] data) +158 System.Net.WebClient.UploadData(String address, Byte[] data) +34 _Default.Page_Load(Object sender, EventArgs e) in C:\Inetpub\sites\MiddleWare\Default.aspx.vb:47 System.Web.UI.Control.OnLoad(EventArgs e) +99 System.Web.UI.Control.LoadRecursive() +50 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +627 |
Bij correct wachtwoord, krijg ik alleen de WebException, dus ik gok dat IIS lokaal ook het wachtwoord al probeert ofzo?

[ Voor 36% gewijzigd door jp op 18-11-2009 17:02 ]