[Mono-bugs] [Bug 75556][Wis] New - Digest Authentication error
bugzilla-daemon at bugzilla.ximian.com
bugzilla-daemon at bugzilla.ximian.com
Fri Jul 15 10:09:01 EDT 2005
Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.
Changed by mcollovati at nbfactory.com.
http://bugzilla.ximian.com/show_bug.cgi?id=75556
--- shadow/75556 2005-07-15 10:09:01.000000000 -0400
+++ shadow/75556.tmp.30005 2005-07-15 10:09:01.000000000 -0400
@@ -0,0 +1,59 @@
+Bug#: 75556
+Product: Mono: Class Libraries
+Version: 1.1
+OS:
+OS Details:
+Status: NEW
+Resolution:
+Severity:
+Priority: Wishlist
+Component: System
+AssignedTo: mono-bugs at ximian.com
+ReportedBy: mcollovati at nbfactory.com
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL:
+Summary: Digest Authentication error
+
+There seems to be a bug in System.Net.DigestSession class
+I try to contact a remote web service running on IIS 6, secured with digest
+authentication, via soap protocol.
+The server always returns a HTTP 401 Status Unauthorized.
+The same client code runs fine on .NET.
+
+The problem is in the http Authorization header: mono sends the quality of
+protection parameter (qop) whitout double slashes
+This is the trace of the http post running mono
+
+User-Agent: Mono Web Services Client Protocol 1.1.4322.573
+SOAPAction: "http://s.mappoint.net/mappoint-30/GetMap"
+Content-Type: text/xml; charset=utf-8
+Connection: keep-alive
+Authorization: Digest username="xxxxxxx", realm="MapPoint",
+nonce="9c211787a79988989624331211001ee2d0ef38f6a49e2d7d0fbbd45263c5",
+uri="/Render-30/RenderService.asmx",
+response="f0830ee0d01443cddb478a733767d4d1", qop=auth, nc=00000001,
+cnonce="UACoF0wQT7fN0K4wpUnX"
+Content-Length: 941
+Expect: 100-continue
+Host: renderv3.staging.mappoint.net
+
+
+Running .NET the headers are similar but with
+qop="auth"
+whit double slashes
+
+To solve the problem i get the latest class library source code from
+svn://svn.myrealbox.com/source/trunk/mcs and replaced in the
+Authenticate(WebRequest webRequest, ICredentials credentials) method of
+the class System.Net.DigestSession this code
+auth.AppendFormat ("qop={0}, ", QOP);
+
+with this
+
+auth.AppendFormat ("qop=\"{0}\", ", QOP);
+
+and recompiled mono
+
+
+Now it works fin
More information about the mono-bugs
mailing list