<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.iis.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:cs="http://blogs.iis.net/"><channel><title>Sakya&amp;#39;s Blog</title><link>http://blogs.iis.net/sakyad/default.aspx</link><description /><dc:language>en</dc:language><generator>CommunityServer 2007 SP1 (Debug Build: 20510.895)</generator><item><title>ASP.NET Menu Control getting padded with white space on IE8</title><link>http://blogs.iis.net/sakyad/archive/2009/04/11/asp-net-menu-control-getting-padded-with-white-space-on-ie8.aspx</link><pubDate>Sat, 11 Apr 2009 19:29:00 GMT</pubDate><guid isPermaLink="false">50bcf3b4-f6fe-4638-adff-0c150e922e99:3081142</guid><dc:creator>sakya_dasgupta</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.iis.net/sakyad/rsscomments.aspx?PostID=3081142</wfw:commentRss><comments>http://blogs.iis.net/sakyad/archive/2009/04/11/asp-net-menu-control-getting-padded-with-white-space-on-ie8.aspx#comments</comments><description>&lt;p&gt;   &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:d286e652-3988-40ee-9043-f76c6f1f11ba" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/ASP.NET" rel="tag"&gt;ASP.NET&lt;/a&gt;,&lt;a href="http://technorati.com/tags/VS%202008" rel="tag"&gt;VS 2008&lt;/a&gt;,&lt;a href="http://technorati.com/tags/IE%208" rel="tag"&gt;IE 8&lt;/a&gt;,&lt;a href="http://technorati.com/tags/CSS%202.0" rel="tag"&gt;CSS 2.0&lt;/a&gt;&lt;/div&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Recently I was helping this developer on a particularly interesting issue. He had an asp.net web application that had been in productions for years and worked perfectly. Now they were planning to use XHTML 1.1 instead of the previous XHTML 1.0 Transitional and target the most recent browsers, primarily IE 8.&lt;/p&gt;  &lt;p&gt;Interestingly when they tried to use the same code that was on production in there test environment using XHTML 1.1 and tested on IE 8, the menu controls were no longer rendering as expected; but had white space padding on top and bottom of the control. It was a pretty simple basic menu control with some CSS 2.0 styling. Furthermore the solution to this was simply changing to the IE 8 compatibility mode from the browser settings. Needless to say this is not a very acceptable solution :) :)&lt;/p&gt;  &lt;p&gt;This is when I decided to repro the issue with a just a simple menu control on a default.aspx page. And interestingly I was able to reproduce the issue very quickly; in fact even without the CSS styling we can see the issue.&amp;#160; Now we already had a known issue with the menu control rendering in IE 8 and have an available hot fix for it &amp;#8211; here&amp;#8217;s an excerpt from Bertrand Roy&amp;#8217;s blog. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://weblogs.asp.net/bleroy/archive/2009/03/23/asp-menu-fix-for-ie8-problem-available.aspx"&gt;http://weblogs.asp.net/bleroy/archive/2009/03/23/asp-menu-fix-for-ie8-problem-available.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#8220;&lt;em&gt;It so happens that the menu control is making a bad assumption on what the default value for z-index should be. We debated this at length with the IE team, but it became clear as we did so that they were right and that we were wrong. We had to fix that.&amp;#8221;&lt;/em&gt;     &lt;br /&gt;&lt;a href="http://support.microsoft.com/kb/962351"&gt;http://support.microsoft.com/kb/962351&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;So the first step was to apply the hot fix, however even after this we see the white space padding. The repro can be simply done using the following code: using a simple menu control, a div tag to form a border around it and use some basic CSS styling&lt;/p&gt;  &lt;p&gt;&lt;font color="#800000"&gt;&amp;lt;%@ Page Language=&amp;quot;vb&amp;quot; AutoEventWireup=&amp;quot;false&amp;quot; CodeBehind=&amp;quot;Default.aspx.vb&amp;quot; Inherits=&amp;quot;WebApplication3._Default&amp;quot;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Trace=&amp;quot;false&amp;quot; %&amp;gt; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#800000"&gt;&amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.1//EN&amp;quot; &amp;quot;&lt;/font&gt;&lt;a href="http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" ?="?"&gt;&lt;font color="#800000"&gt;http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd&amp;quot;&lt;/font&gt;&lt;/a&gt;&lt;font color="#800000"&gt;&amp;gt;      &lt;br /&gt;&amp;lt;html xmlns=&amp;quot;&lt;/font&gt;&lt;a href="http://www.w3.org/1999/xhtml" ?="?"&gt;&lt;font color="#800000"&gt;http://www.w3.org/1999/xhtml&amp;quot;&lt;/font&gt;&lt;/a&gt;&lt;font color="#800000"&gt;&amp;gt;      &lt;br /&gt;&amp;lt;head runat=&amp;quot;server&amp;quot;&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;link href=&amp;quot;StyleSheet1.css&amp;quot; type=&amp;quot;text/css&amp;quot; rel=&amp;quot;stylesheet&amp;quot; /&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;title&amp;gt;&amp;lt;/title&amp;gt;&amp;#160;&amp;#160; &lt;br /&gt;&amp;lt;/head&amp;gt;       &lt;br /&gt;&amp;lt;body&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;form id=&amp;quot;form1&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;div style=&amp;quot;border: 1px solid #FF0000;&amp;quot;&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;asp:MenuID=&amp;quot;Menu1&amp;quot;runat=&amp;quot;server&amp;quot;BackColor=&amp;quot;#B5C7DE&amp;quot;DynamicHorizontalOffset=2&amp;quot; Font-Names=&amp;quot;Verdana&amp;quot; Font-Size=&amp;quot;0.8em&amp;quot; ForeColor=&amp;quot;#284E98&amp;quot; Orientation=&amp;quot;Horizontal&amp;quot;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; StaticSubMenuIndent=&amp;quot;10px&amp;quot;&amp;#160; BorderStyle=&amp;quot;None&amp;quot; BorderWidth=&amp;quot;0px&amp;quot;&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;StaticSelectedStyle BackColor=&amp;quot;#507CD1&amp;quot; /&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;StaticMenuItemStyle HorizontalPadding=&amp;quot;5px&amp;quot;VerticalPadding=&amp;quot;2px&amp;quot; /&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;DynamicHoverStyle BackColor=&amp;quot;#284E98&amp;quot; ForeColor=&amp;quot;White&amp;quot; /&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;font color="#ff0000"&gt;&amp;lt;DynamicMenuStyle BackColor=&amp;quot;#B5C7DE&amp;quot; CssClass=&amp;quot;IE8Fix&amp;quot;/&amp;gt; &lt;/font&gt;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;DynamicSelectedStyle BackColor=&amp;quot;#507CD1&amp;quot; /&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;DynamicMenuItemStyle HorizontalPadding=&amp;quot;5px&amp;quot; VerticalPadding=&amp;quot;2px&amp;quot; /&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;StaticHoverStyle BackColor=&amp;quot;#284E98&amp;quot; ForeColor=&amp;quot;White&amp;quot; /&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;Items&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;asp:MenuItem ImageUrl=&amp;quot;~/Images/TM_Payments.gif&amp;quot; PopOutImageUrl=&amp;quot;~/Images/PopOutImage.gif&amp;quot;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; SeparatorImageUrl=&amp;quot;~/Images/TM_SeparatorImage.gif&amp;quot;&amp;gt;       &lt;br /&gt;&amp;lt;asp:MenuItem Text=&amp;quot;New Item&amp;quot; Value=&amp;quot;New Item&amp;quot;&amp;gt;&amp;lt;/asp:MenuItem&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;asp:MenuItem Text=&amp;quot;New Item&amp;quot; Value=&amp;quot;New Item&amp;quot;&amp;gt;&amp;lt;/asp:MenuItem&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/asp:MenuItem&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;asp:MenuItem ImageUrl=&amp;quot;~/Images/TM_ExemptionsAndSavings.gif&amp;quot; PopOutImageUrl=&amp;quot;~/Images/PopOutImage.gif&amp;quot;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; SeparatorImageUrl=&amp;quot;~/Images/TM_SeparatorImage.gif&amp;quot;&amp;gt;&amp;lt;/asp:MenuItem&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/Items&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/asp:Menu&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;/form&amp;gt;&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&lt;/font&gt;&lt;/p&gt; &lt;font color="#800000"&gt;   &lt;p&gt;&lt;strong&gt;The CSS file used:&lt;/strong&gt; &lt;font color="#ff0000"&gt;StyleSheet1.css&lt;/font&gt; is even simpler and is being used to get around the problem of the value of the z-index being set to auto and I &amp;#8217;am basically manually providing a value to it. (This is what the hot fix is for, however I like to overly protective about my controls :) )&lt;/p&gt;  &lt;/font&gt;  &lt;p&gt;   &lt;br /&gt;&lt;font color="#800000"&gt;.IE8Fix      &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; z-index: &lt;font color="#0000ff"&gt;1000&lt;/font&gt;;       &lt;br /&gt;}&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Now here is the funny part, I would expect it to render just perfect, but we actually get a strange white space on top of the menu control. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.iis.net/blogs/sakyad/WindowsLiveWriter/ASP.NETMenuControlgettingpaddedwithwhite_B85F/1_2.jpg"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="164" alt="1" src="http://blogs.iis.net/blogs/sakyad/WindowsLiveWriter/ASP.NETMenuControlgettingpaddedwithwhite_B85F/1_thumb.jpg" width="319" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;And as mentioned previously just changing the to the IE7 compatibility mode from the browser , everything works fine. &lt;/p&gt;  &lt;p&gt;This is when I decided to put to use the new developer tool that ships in with the IE 8. After a lot of scratching my head, playing with the tool, comparison with IE 7 source view and a whole lot of caffeine, to my surprise I found a line of code that seemed a little strange as I did not put it in there. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://blogs.iis.net/blogs/sakyad/WindowsLiveWriter/ASP.NETMenuControlgettingpaddedwithwhite_B85F/image_2.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="268" alt="image" src="http://blogs.iis.net/blogs/sakyad/WindowsLiveWriter/ASP.NETMenuControlgettingpaddedwithwhite_B85F/image_thumb.png" width="351" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font color="#800000"&gt;&amp;lt;a href&lt;font color="#0000ff"&gt;=&amp;quot;#Menu1_SkipLink&amp;quot;&amp;gt;&lt;/font&gt;       &lt;br /&gt;&amp;lt;img width=&amp;quot;0&amp;quot; height=&amp;quot;0&amp;quot; style=&amp;quot;border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px;&amp;quot; alt=&amp;quot;Skip Navigation Links&amp;quot; src=&amp;quot;/WebResource.axd?d=uRB0WdB6KVmD8fqrZUdC3A2&amp;amp;t=633697551594691359&amp;quot;/&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;This is line of code was present in both the view source from IE 8 and IE 7 , but strangely it was being rendered by IE 8 and not by IE 7. This skip link control is added by default for the menu control, and since on IE 8 it was being rendered it was taking the invisible white space on top of each menu control.&lt;/p&gt;  &lt;p&gt;So eureka struck :) , I simply added a SkipLinkText=&amp;quot;&amp;quot; to my code and vola!! everything renders just as expected......&lt;/p&gt;  &lt;p&gt;&lt;font color="#800000"&gt;&amp;lt;asp:Menu ID=&amp;quot;Menu1&amp;quot; runat=&amp;quot;server&amp;quot; BackColor=&amp;quot;#B5C7DE&amp;quot; DynamicHorizontalOffset=&amp;quot;2&amp;quot;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Font-Names=&amp;quot;Verdana&amp;quot; Font-Size=&amp;quot;0.8em&amp;quot; ForeColor=&amp;quot;#284E98&amp;quot; Orientation=&amp;quot;Horizontal&amp;quot;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; StaticSubMenuIndent=&amp;quot;10px&amp;quot; CssClass=&amp;quot;mainmenu&amp;quot; BorderStyle=&amp;quot;None&amp;quot; BorderWidth=&amp;quot;0px&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt;SkipLinkText=&amp;quot;&amp;quot;&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Here&amp;#8217;s the perfect rendering......&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.iis.net/blogs/sakyad/WindowsLiveWriter/ASP.NETMenuControlgettingpaddedwithwhite_B85F/image_6.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="197" alt="image" src="http://blogs.iis.net/blogs/sakyad/WindowsLiveWriter/ASP.NETMenuControlgettingpaddedwithwhite_B85F/image_thumb_2.png" width="363" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Still not sure why this Skiplink control is being rendered for a default menu control. However this is a simple workaround that can be used to get over this issue...........&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;( &lt;em&gt;BTW it does not matter whether you use XHTTP1.1 or XHTTP 1.0 Transitional&lt;/em&gt; ) &lt;/p&gt;&lt;img src="http://blogs.iis.net/aggbug.aspx?PostID=3081142" width="1" height="1"&gt;</description><enclosure url="http://blogs.iis.net/sakyad/attachment/3081142.ashx" length="542194" type="application/x-zip-compressed" /><category domain="http://blogs.iis.net/sakyad/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://blogs.iis.net/sakyad/archive/tags/VS+2008/default.aspx">VS 2008</category><category domain="http://blogs.iis.net/sakyad/archive/tags/IE+8/default.aspx">IE 8</category><category domain="http://blogs.iis.net/sakyad/archive/tags/Menu+control/default.aspx">Menu control</category></item><item><title>Advanced digest authentication works from Internet Explorer however we receive multiple authentication prompts on each GET request from fire fox</title><link>http://blogs.iis.net/sakyad/archive/2009/04/04/advanced-digest-authentication-works-from-internet-explorer-however-we-receive-multiple-authentication-prompts-on-each-get-request-from-fire-fox.aspx</link><pubDate>Sat, 04 Apr 2009 19:46:00 GMT</pubDate><guid isPermaLink="false">50bcf3b4-f6fe-4638-adff-0c150e922e99:3063443</guid><dc:creator>sakya_dasgupta</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.iis.net/sakyad/rsscomments.aspx?PostID=3063443</wfw:commentRss><comments>http://blogs.iis.net/sakyad/archive/2009/04/04/advanced-digest-authentication-works-from-internet-explorer-however-we-receive-multiple-authentication-prompts-on-each-get-request-from-fire-fox.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;Sometime back I was working on a particular issue which was particularly interesting . They had a website that was configured to use Advanced Digest authentication from IIS , however the peculiar behaviour was that while using fire fox they received multiple authentication prompts for every GET request. Basically a click on any link or even a mere refresh on the current page was causing an authentication prompt. Where as the expected behaviour would be a single auth prompt initially to access the website , much like basic authentication. This worked just as expected on Internet Explorer :) That is when I decided to get to the bottom on this ...&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;STRONG&gt;&lt;U&gt;Problem Description&lt;/U&gt;:&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;DIV class=MsoNormal&gt;Advanced digest Authentication not working on Firefox&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=MsoNormal&gt;&amp;nbsp;For every new GET request using fire fox we receive a prompts for credentials . Refreshing any page also causes an authentication prompt&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=MsoNormal&gt;Using IE this works as expected with only a single prompt , no additional prompt for a new request&lt;/DIV&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P class=MsoNormal&gt;&lt;STRONG&gt;&lt;U&gt;Resolution :&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;Running network monitor tool to capture traffic from both IE and fire fox while browsing to the website &amp;lt;http://fqdn.com/cgi-bin/admin/start.exe&amp;gt; . Comparing the two captures for HTTP traffic we see that in case of ,&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;Internet Explorer:&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;==============&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&amp;nbsp;For the first GET request there is no qop=”auth” parameter , the subsequent response looks like the following ,&lt;/P&gt;
&lt;P class=MsoNormal&gt;Authenticate:&amp;nbsp; Digest &lt;SPAN style="BACKGROUND: yellow"&gt;qop="auth"&lt;/SPAN&gt;,algorithm=MD5-sess,nonce="c2c8c9927f93c9019bc1181dc62db3a75823ffa6be50320d30831dcfaeb753d84a2a40b5ea3f62a8",charset=utf-8,realm="cdm.oclc.org"&lt;/P&gt;
&lt;P class=MsoNormal&gt;Here onwards every new GET request no longer carries the qop=”auth” parameter however carries an additional parameter cnonce&amp;nbsp; and nc .&lt;/P&gt;
&lt;P class=MsoNormal mce_keep="true"&gt;&lt;SPAN style="FONT-FAMILY: Symbol"&gt;&lt;SPAN&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Http: Request, GET &lt;A target=_blank href="http://fqdn.com/cgi-bin/admin/start.exe" mce_href="https://aps.mail.microsoft.com/OWA/redir.aspx?C=a84bf3ee82d8486cab3b82a84bbacbd7&amp;amp;URL=http%3a%2f%2fexp50005.contentdm.oclc.org%2fcgi-bin%2fadmin%2fstart.exe"&gt;&lt;FONT color=#0000ff&gt;http://fqdn.com/cgi-bin/admin/start.exe&lt;/FONT&gt;&lt;/A&gt; , Using Digest Authorization&lt;/P&gt;
&lt;P style="TEXT-INDENT: -18pt; MARGIN-LEFT: 74.25pt" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Wingdings"&gt;&lt;SPAN&gt;Ø&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Authorization:&amp;nbsp; Digest username="50005admin",realm="cdm.oclc.org",nonce="c2c8c9927f93c9019bc1181dc62db3a75823ffa6be50320d30831dcfaeb753d84a2a40b5ea3f62a8",uri="/cgi-bin/admin/start.exe",&lt;SPAN style="BACKGROUND: yellow"&gt;cnonce="6fa7bf203f140e0bde0cfa1b62b73215",&lt;/SPAN&gt;nc=&lt;SPAN style="BACKGROUND: lime"&gt;00000001&lt;/SPAN&gt;,algorithm=MD5-sess&lt;/P&gt;
&lt;P class=MsoNormal mce_keep="true"&gt;Command : GET&amp;nbsp; ; URI: &lt;A target=_blank href="http://fqdn.com/cgi-bin/admin/index.exe" mce_href="https://aps.mail.microsoft.com/OWA/redir.aspx?C=a84bf3ee82d8486cab3b82a84bbacbd7&amp;amp;URL=http%3a%2f%2fexp50005.contentdm.oclc.org%2fcgi-bin%2fadmin%2findex.exe"&gt;&lt;FONT color=#0000ff&gt;http://fqdn.com/cgi-bin/admin/index.exe&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -18pt; MARGIN-LEFT: 74.25pt" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Wingdings"&gt;&lt;SPAN&gt;Ø&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Authorization:&amp;nbsp; Digest username="50005admin",realm="cdm.oclc.org",nonce="c2c8c9927f93c9019bc1181dc62db3a75823ffa6be50320d30831dcfaeb753d84a2a40b5ea3f62a8",uri="/cgi-bin/admin/index.exe",&lt;SPAN style="BACKGROUND: yellow"&gt;cnonce="6fa7bf203f140e0bde0cfa1b62b73215",&lt;/SPAN&gt;nc=&lt;SPAN style="BACKGROUND: lime"&gt;00000002&lt;/SPAN&gt;,algorithm=MD5-sess,&lt;/P&gt;
&lt;P class=MsoNormal mce_keep="true"&gt;Command : GET ; URI: &lt;A target=_blank href="http://fqdn.com/cgi-bin/admin/collections.exe" mce_href="https://aps.mail.microsoft.com/OWA/redir.aspx?C=a84bf3ee82d8486cab3b82a84bbacbd7&amp;amp;URL=http%3a%2f%2fexp50005.contentdm.oclc.org%2fcgi-bin%2fadmin%2fcollections.exe"&gt;&lt;FONT color=#0000ff&gt;http://fqdn.com/cgi-bin/admin/collections.exe&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -18pt; MARGIN-LEFT: 74.25pt" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Wingdings"&gt;&lt;SPAN&gt;Ø&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Authorization:&amp;nbsp; Digest username="50005admin",realm="cdm.oclc.org",nonce="c2c8c9927f93c9019bc1181dc62db3a75823ffa6be50320d30831dcfaeb753d84a2a40b5ea3f62a8",uri="/cgi-bin/admin/collections.exe",&lt;SPAN style="BACKGROUND: yellow"&gt;cnonce="6fa7bf203f140e0bde0cfa1b62b73215",&lt;/SPAN&gt;nc=&lt;SPAN style="BACKGROUND: lime"&gt;00000003&lt;/SPAN&gt;,algorithm=MD5&lt;/P&gt;
&lt;P class=MsoNormal mce_keep="true"&gt;Basically the qop=”auth” is there only for the first response for all subsequent request the client sends a Client Nonce (cnonce) along with a Nonce counter (nc) since the user is already authenticated&lt;/P&gt;
&lt;P class=MsoNormal&gt;The cnonce value is persisted and for every request only the nonce counter increments telling the server this is a new request from the same client who has been authenticated.&lt;/P&gt;
&lt;P class=MsoNormal mce_keep="true"&gt;&lt;B&gt;Mozilla Fire Fox :&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;=============&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;For the first GET request there is no qop=”auth” parameter , the subsequent response looks like the following ,&lt;/P&gt;
&lt;P class=MsoNormal mce_keep="true"&gt;Authenticate:&amp;nbsp; Digest &lt;SPAN style="BACKGROUND: yellow"&gt;qop="auth",&lt;/SPAN&gt;algorithm=MD5-sess,nonce="a84a4bc67c93c901b9f6606b20651d47a7c3d4a5b00f09103f3b85598472f451ea8f4818e582bdcb",charset=utf-8,realm="cdm.oclc.org"&lt;/P&gt;
&lt;P class=MsoNormal&gt;(Till here it behaves exactly like internet explorer)&lt;/P&gt;
&lt;P class=MsoNormal mce_keep="true"&gt;Now unlike IE every new GET request contains the qop=&amp;lt;Blank&amp;gt; and the AuthData a qop=”auth”&amp;nbsp; parameter and does not contain the client nonce (cnonce) , however there is a nc .&lt;/P&gt;
&lt;P class=MsoNormal mce_keep="true"&gt;HTTP:Request, GET /cgi-bin/admin/start.exe , Using Digest Authorization&lt;/P&gt;
&lt;P style="TEXT-INDENT: -18pt; MARGIN-LEFT: 74.25pt" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Wingdings"&gt;&lt;SPAN&gt;Ø&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Authorization:&amp;nbsp; Digest username="50005admin", realm="cdm.oclc.org", nonce="a84a4bc67c93c901b9f6606b20651d47a7c3d4a5b00f09103f3b85598472f451ea8f4818e582bdcb", uri="/cgi-bin/admin/start.exe", algorithm=MD5-sess, response="17f92115fa201b3186c5a9737d777d6b", qop=&lt;/P&gt;
&lt;P style="TEXT-INDENT: -18pt; MARGIN-LEFT: 74.25pt" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Wingdings"&gt;&lt;SPAN&gt;Ø&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;AuthData: username="50005admin", realm="cdm.oclc.org", nonce="a84a4bc67c93c901b9f6606b20651d47a7c3d4a5b00f09103f3b85598472f451ea8f4818e582bdcb", uri="/cgi-bin/admin/start.exe", algorithm=MD5-sess, response="17f92115fa201b3186c5a9737d777d6b", &lt;SPAN style="BACKGROUND: yellow"&gt;qop="auth", nc=00&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -18pt; MARGIN-LEFT: 74.25pt" class=MsoListParagraph&gt;HTTP:Request, GET /cgi-bin/admin/index.exe , Using Digest Authorization&lt;/P&gt;
&lt;P style="TEXT-INDENT: -18pt; MARGIN-LEFT: 74.25pt" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Wingdings"&gt;&lt;SPAN&gt;Ø&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Authorization:&amp;nbsp; Digest username="50005admin", realm="cdm.oclc.org", nonce="a84a4bc67c93c901b9f6606b20651d47a7c3d4a5b00f09103f3b85598472f451ea8f4818e582bdcb", uri="/cgi-bin/admin/index.exe", algorithm=MD5-sess, response="979d6d56916877dda6620569f8f63a12", qop=&lt;/P&gt;
&lt;P style="TEXT-INDENT: -18pt; MARGIN-LEFT: 74.25pt" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Wingdings"&gt;&lt;SPAN&gt;Ø&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;AuthData: username="50005admin", realm="cdm.oclc.org", nonce="a84a4bc67c93c901b9f6606b20651d47a7c3d4a5b00f09103f3b85598472f451ea8f4818e582bdcb", uri="/cgi-bin/admin/index.exe", algorithm=MD5-sess, response="979d6d56916877dda6620569f8f63a12", &lt;SPAN style="BACKGROUND: yellow"&gt;qop="auth", nc=0000&lt;/SPAN&gt; &lt;/P&gt;
&lt;P class=MsoNormal mce_keep="true"&gt;Therefore what happens here is that every GET request has a qop=”auth” section and there is no cnonce ; hence &amp;nbsp;you’ll also notice that the nonce counter (nc) never increments. As a result for every request the server fails to authenticate the client and there is a new prompt . &lt;/P&gt;
&lt;P class=MsoNormal mce_keep="true"&gt;In short by sending a cnonce, the client could gain some assurance that its request arrived unchanged at the server. But if the qop/response/cnonce attributes got deleted by an agent in the middle, the server wouldn't know it and would just assume it was dealing with an older client. In which case, when the client eventually checks the Auth-info header's "response=" directive, the check will fail.&lt;/P&gt;
&lt;P class=MsoNormal mce_keep="true"&gt;For information on Advanced Digest authentication follow the &lt;FONT color=#1f497d&gt;RFC 2069 &lt;/FONT&gt;&lt;A target=_blank href="https://aps.mail.microsoft.com/OWA/redir.aspx?C=a84bf3ee82d8486cab3b82a84bbacbd7&amp;amp;URL=http%3a%2f%2fen.wikipedia.org%2fwiki%2fDigest_access_authentication" mce_href="https://aps.mail.microsoft.com/OWA/redir.aspx?C=a84bf3ee82d8486cab3b82a84bbacbd7&amp;amp;URL=http%3a%2f%2fen.wikipedia.org%2fwiki%2fDigest_access_authentication"&gt;&lt;FONT color=#0000ff&gt;http://en.wikipedia.org/wiki/Digest_access_authentication&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.iis.net/aggbug.aspx?PostID=3063443" width="1" height="1"&gt;</description><category domain="http://blogs.iis.net/sakyad/archive/tags/IIS+6.0/default.aspx">IIS 6.0</category><category domain="http://blogs.iis.net/sakyad/archive/tags/Netmon/default.aspx">Netmon</category><category domain="http://blogs.iis.net/sakyad/archive/tags/IE+7.0/default.aspx">IE 7.0</category><category domain="http://blogs.iis.net/sakyad/archive/tags/Advanced+Digest+Authentication/default.aspx">Advanced Digest Authentication</category></item><item><title>Enforcing SSL 3.0 and removing weak encryption vulnerability over SSL ( IIS 6.0 and ISA )</title><link>http://blogs.iis.net/sakyad/archive/2008/12/11/enforcing-ssl-3-0-and-removing-weak-encryption-vulnerability-over-ssl-iis-6-0-and-isa.aspx</link><pubDate>Thu, 11 Dec 2008 15:12:00 GMT</pubDate><guid isPermaLink="false">50bcf3b4-f6fe-4638-adff-0c150e922e99:2799908</guid><dc:creator>sakya_dasgupta</dc:creator><slash:comments>6</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.iis.net/sakyad/rsscomments.aspx?PostID=2799908</wfw:commentRss><comments>http://blogs.iis.net/sakyad/archive/2008/12/11/enforcing-ssl-3-0-and-removing-weak-encryption-vulnerability-over-ssl-iis-6-0-and-isa.aspx#comments</comments><description>&lt;p align="justify"&gt;Running a Custom Penetration test&amp;#160; on IIS 6.0 server having SSL enabled may show vulnerability reports as a weak encryption on IIS . ISA server 2000 acts as&amp;#160; proxy in front of the IIS server and also has certificate installed on it. The following is the error report&amp;#160; generated by the Custom penetration test when we have already forced SSL 3.0 , however still have the weak encryption keys supported on the server , which may be used by attackers to exploit man in the middle like attacks on the server. &lt;/p&gt;  &lt;p align="justify"&gt;SSL Server Supports Weak Encryption Vulnerability port 443/tcp over SSL    &lt;br /&gt;QID: 38140     &lt;br /&gt;Category: General remote services     &lt;br /&gt;CVE ID: -     &lt;br /&gt;Vendor Reference: -     &lt;br /&gt;Bugtraq ID: -     &lt;br /&gt;Modified: 10/16/2008     &lt;br /&gt;Edited: No     &lt;br /&gt;THREAT:     &lt;br /&gt;The Secure Socket Layer (SSL) protocol allows for secure communication between a client and a server.     &lt;br /&gt;SSL encryption ciphers are classified based on encryption key length as follows:     &lt;br /&gt;HIGH - key length larger than 128 bits     &lt;br /&gt;MEDIUM - key length equal to 128 bits     &lt;br /&gt;LOW - key length smaller than 128 bits     &lt;br /&gt;Messages encrypted with LOW encryption ciphers are easy to decrypt. Commercial SSL servers should only support MEDIUM or HIGH strength ciphers to     &lt;br /&gt;guarantee transaction security. &lt;/p&gt;  &lt;p align="justify"&gt;IMPACT: &lt;/p&gt;  &lt;p align="justify"&gt;   &lt;br /&gt;An attacker can exploit this vulnerability to decrypt secure communications without authorization. &lt;/p&gt;  &lt;p align="justify"&gt;Further the &amp;quot;require 128 bit Encryption &amp;quot;&amp;#160; on IIS 6.0 dose not enforce strong SSL/TLS ciphers. It only ensures that 128 bit keys are used for encryption.The setting &amp;#8220;Require 128-bit encryption&amp;#8221; enables all 128-bit encryption algorithms, including RC2 and RC4. It also enables suites that use MD5 for integrity. Since all of them wont provide utmost security, we need to disable them separately.&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://blogs.iis.net/blogs/sakyad/WindowsLiveWriter/EnforcingSSL3.0andremovingweaken.0andISA_6411/require-128-bit-ssl_2.gif"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="440" alt="require-128-bit-ssl" src="http://blogs.iis.net/blogs/sakyad/WindowsLiveWriter/EnforcingSSL3.0andremovingweaken.0andISA_6411/require-128-bit-ssl_thumb.gif" width="353" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="justify"&gt;&lt;strong&gt;&lt;u&gt;Resolution&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p align="justify"&gt;SSL/TLS supports a range of algorithms. For symmetric encryption, it can use AES, 3DES, RC2, or RC4. For message integrity, it can use MD5 or SHA. For asymmetric encryption, the algorithm is RSA. &lt;/p&gt;  &lt;p align="justify"&gt;A cipher suite is a combination of algorithms. RSA_AES_SHA is an example of a cipher suite. FIPS has approved specific cipher suites as strong. These use AES or 3DES for encryption, and SHA for integrity. FIPS does not consider other cipher suites strong. &lt;/p&gt;  &lt;p align="justify"&gt;Now why we want to enforce SSL3.0 when it is almost a completely different protocol as compared to SSL 2.0 ? &lt;/p&gt;  &lt;p align="justify"&gt;The reason being SSL2.0 as compared to SSL 3.0 is a much weaker protocol and prone to security hacks. &lt;/p&gt;  &lt;p&gt;&lt;em&gt;SSL Version 3.0 uses the BSAFE 3.0 implementation from RSA Data Security, Incorporated. BSAFE&amp;#160;&amp;#160;&amp;#160; 3.0 includes a&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; number of timing attack fixes and the SHA-1 hashing algorithm. The SHA-1 hashing algorithm is considered to be&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; more secure than the MD5 hashing algorithm. SHA-1 allows SSL Version 3.0 to support additional cipher suites&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; which use SHA-1 instead of MD5.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;&lt;em&gt;SSL Version 3.0 protocol reduces man-in-the-middle (MITM) type of attacks from occurring during SSL handshake&amp;#160;&amp;#160;&amp;#160; processing. In SSL Version 2.0, it was possible, though unlikely, that a MITM attack could accomplish cipher&amp;#160;&amp;#160;&amp;#160; specification weakening. Weakening the cipher could allow an unauthorized person to break the SSL session key. &lt;/em&gt;&lt;/p&gt;  &lt;p align="justify"&gt;A Possible scenario can&amp;#160; be , someone intercepting the initial message in an SSL2.0 handshake can force the server and client to agree to the weakest mutually supported encryption standard. So if you are connecting to servers that support 40 bit export-weakened encryption, and transmitting sensitive info, you could have trouble &lt;/p&gt;  &lt;p align="justify"&gt;This is fixed by enforcing SSL3.0 from the registry and disabling older verions of SSL from here , &lt;/p&gt;  &lt;p align="justify"&gt;&lt;strong&gt;HKey_Local_Machine\System\CurrentControlSet\Control\SecurityProviders \SCHANNEL\Protocols &lt;/strong&gt;&lt;/p&gt;  &lt;p align="justify"&gt;refer KB 187498 &lt;/p&gt;  &lt;p align="justify"&gt;Now coming to the second error as reported by the penetration testing , this occurs since although we have SSL3.0    &lt;br /&gt;enforced but due to the weak encryption schemes still configured in the registry we may reach a scenarion where in we fall back on the weakest mutually supported encryption standard as mentioned earlier. &lt;/p&gt;  &lt;p align="justify"&gt;SSL encryption ciphers are classified based on encryption key length as follows:    &lt;br /&gt;HIGH - key length larger than 128 bits     &lt;br /&gt;MEDIUM - key length equal to 128 bits     &lt;br /&gt;LOW - key length smaller than 128 bits &lt;/p&gt;  &lt;p align="justify"&gt;To get around this we need to make the changes in the registry to restrict certain algorithms and protocols in &lt;strong&gt;schannel.dll&lt;/strong&gt;     &lt;br /&gt;To ensure that only high encryption keys are used , we need to make the following registry changes : &lt;/p&gt;  &lt;p align="justify"&gt;HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphers]    &lt;br /&gt;[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersDES 56/56]     &lt;br /&gt;&amp;#8220;Enabled&amp;#8221;=dword:00000000     &lt;br /&gt;[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersNULL]     &lt;br /&gt;&amp;#8220;Enabled&amp;#8221;=dword:00000000     &lt;br /&gt;[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersRC2 128/128]     &lt;br /&gt;&amp;#8220;Enabled&amp;#8221;=dword:ffffffff     &lt;br /&gt;[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersRC2 40/128]     &lt;br /&gt;&amp;#8220;Enabled&amp;#8221;=dword:00000000     &lt;br /&gt;[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersRC2 56/128]     &lt;br /&gt;&amp;#8220;Enabled&amp;#8221;=dword:00000000     &lt;br /&gt;[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersRC4 128/128]     &lt;br /&gt;&amp;#8220;Enabled&amp;#8221;=dword:ffffffff     &lt;br /&gt;[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersRC4 40/128]     &lt;br /&gt;&amp;#8220;Enabled&amp;#8221;=dword:00000000     &lt;br /&gt;[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersRC4 56/128]     &lt;br /&gt;&amp;#8220;Enabled&amp;#8221;=dword:00000000     &lt;br /&gt;[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersRC4 64/128]     &lt;br /&gt;&amp;#8220;Enabled&amp;#8221;=dword:00000000     &lt;br /&gt;[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELCiphersTriple DES 168/168]     &lt;br /&gt;&amp;#8220;Enabled&amp;#8221;=dword:ffffffff &lt;/p&gt;  &lt;p align="justify"&gt;For detailed description refer KB &lt;a href="http://support.microsoft.com/kb/245030"&gt;http://support.microsoft.com/kb/245030&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Note: If ISA server uses HTTPS and we want only the high encryption keys to be used we need to check    &lt;br /&gt;&amp;quot;Require 128 bit, encryption over HTTPS&amp;quot; in ISA&amp;#160; (upto ISA Server 2006) , however this dose not enforce 128 bit encryption . &lt;/p&gt;  &lt;p align="justify"&gt;Refer KB : &lt;a href="http://support.microsoft.com/kb/937293"&gt;http://support.microsoft.com/kb/937293&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#160; &lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:0fdd43cd-5aa7-4aaf-a083-b83e72d9d8d9" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/IIS%206.0" rel="tag"&gt;IIS 6.0&lt;/a&gt;,&lt;a href="http://technorati.com/tags/ISA%20Server" rel="tag"&gt;ISA Server&lt;/a&gt;,&lt;a href="http://technorati.com/tags/SSL%203.0" rel="tag"&gt;SSL 3.0&lt;/a&gt;,&lt;a href="http://technorati.com/tags/schanell.dll" rel="tag"&gt;schanell.dll&lt;/a&gt;,&lt;a href="http://technorati.com/tags/128%20bit%20encryption" rel="tag"&gt;128 bit encryption&lt;/a&gt;&lt;/div&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;/p&gt;&lt;img src="http://blogs.iis.net/aggbug.aspx?PostID=2799908" width="1" height="1"&gt;</description></item><item><title>Process and Thread Identity in ASP.NET – A Practical Approach</title><link>http://blogs.iis.net/sakyad/archive/2008/11/19/process-and-thread-identity-in-asp-net-a-practical-approach.aspx</link><pubDate>Thu, 20 Nov 2008 00:43:56 GMT</pubDate><guid isPermaLink="false">50bcf3b4-f6fe-4638-adff-0c150e922e99:2756525</guid><dc:creator>sakya_dasgupta</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.iis.net/sakyad/rsscomments.aspx?PostID=2756525</wfw:commentRss><comments>http://blogs.iis.net/sakyad/archive/2008/11/19/process-and-thread-identity-in-asp-net-a-practical-approach.aspx#comments</comments><description>&lt;p&gt;The following scenarios establish the way the process identity and the thread identity are defined while building asp.net websites and publishing using the IIS webserver. &lt;/p&gt;  &lt;p&gt;IIS supports the following authentication types : &lt;/p&gt;  &lt;p&gt;&amp;#183; &lt;b&gt;Anonymous&lt;/b&gt; &amp;#8211; In this case the default credentials are of the IUSR_Machinename user . &lt;/p&gt;  &lt;p&gt;&amp;#183; &lt;b&gt;Integrated Windows Authentication (IWA)&lt;/b&gt; : This can either use NTLM challenge/Response or can be configured to use Kerberos. However for this discussion we will not delve into those details. In general while using IWA IIS authenticates using the credentials of the logged on user.&lt;/p&gt;  &lt;p&gt;&amp;#183; &lt;b&gt;Basic authentication&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&amp;#183; &lt;b&gt;Digest authentication&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Here we are interested in the anonymous and IWA authentication types and how it impacts ASP.NET &lt;/p&gt;  &lt;p&gt;&lt;b&gt;ASP.NET Impersonation&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Impersonation is when ASP.NET executes code in the context of an authenticated and authorized client. By default, ASP.NET does not use impersonation and instead executes all code using the same user account as the ASP.NET process, which is typically the ASPNET account. This is contrary to the default behavior of ASP, which uses impersonation by default. In Internet Information Services (IIS) 6, the default identity is the NetworkService account.&lt;/p&gt;  &lt;p&gt;Eg. &amp;lt;identity impersonate = &amp;#8220;true&amp;#8221;/&amp;gt;&lt;/p&gt;  &lt;p&gt;Using impersonation, ASP.NET applications can optionally execute the processing thread using the identity of the client on whose behalf they are operating. If you enable impersonation, ASP.NET can either impersonate the authenticated identity received from IIS or one specified in the application's Web.config file.&lt;b&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Now we&amp;#8217;ll have a look at the scenarios inorder to get a better under standing of the process identity and the Win32 thread identity under which ASP.NET is executing.&lt;/p&gt;  &lt;p&gt;The following code is used to get the current process identity for asp.net and the win32 thread identity rideing on top of it.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;System.Security.Principal.WindowsIdentity.GetCurrent().Name.ToString()&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;System.Threading.Thread.CurrentPrincipal.Identity.Name.ToString()&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;em&gt;&lt;u&gt;Now lets take a look at the scenarios : &lt;/u&gt;&lt;/em&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Scenario 1&lt;/b&gt; : ASP.NET Website located on the local machine and IIS uses IWA . Impersonation is set as &amp;#8220;false&amp;#8221; .&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Observation&lt;/b&gt; : The process identity =NT AUTHORITY\NETWORK SERVICE and the Thread identity is the default logged on users credentials &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Scenario 2&lt;/b&gt;: ASP.NET Website located on the local machine and IIS uses IWA&lt;/p&gt;  &lt;p&gt;Impersonation is set as &amp;#8220;true&amp;#8221; .&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Observation&lt;/b&gt; : Both the Process Identity and the Thread Identity is the default logged on user credentials .&lt;/p&gt;  &lt;p&gt;Next We&amp;#8217;ll look at the way the process identity is affected if we place the website contents on a remote UNC share path. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Scenario 3&lt;/b&gt;: ASP.NET website placed on a remote share location and Impersonation is set as &amp;#8220;false&amp;#8221; and IIS uses IWA. In the connect as option check the box which says &lt;b&gt;, &lt;/b&gt;Always use the authenticated users credentials when validating access to the network directory.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Observation&lt;/b&gt; : The process Identity = NT AUTHORITY\NETWORK SERVICE.&lt;/p&gt;  &lt;p&gt;You may receive one or more error messages when you try to access an ASP.NET application that is hosted by using pass-through authentication in a UNC virtual directory in Internet Information Services 6.0 &lt;/p&gt;  &lt;p&gt;&lt;b&gt;CAUSE&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;This problem occurs because ASP.NET applications are not supported when you select the &lt;b&gt;Always use the authenticated user's credentials when validating access to the network directory&lt;/b&gt; check box in IIS 6.0. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;RESOLUTION&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;To resolve this issue, enter a valid user name and password on the Security Credentials page in the Virtual Directory Creation Wizard when you intend to host an ASP.NET application that is located on a UNC share.&lt;/p&gt;  &lt;p&gt;Refer KB : &lt;a href="http://support.microsoft.com/kb/897110"&gt;http://support.microsoft.com/kb/897110&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Scenario 4&lt;/b&gt; : ASP.NET website placed on a remote share location and Impersonation is set as &amp;#8220;true&amp;#8221; and IIS uses IWA. In the connect as option specify a user name and password to reach the path. &lt;/p&gt;  &lt;p&gt;Note : The username and password specified should also be there on the folder being accessed . i.e the same user should be explicity added and the password should be in sync on that folder.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Observation&lt;/b&gt; : Both the Process identity and the thread identity is that of the one used to access the UNC path .&lt;/p&gt;  &lt;p&gt;For further information visit :&lt;/p&gt;  &lt;p&gt;&lt;a href="http://support.microsoft.com/kb/910449"&gt;http://support.microsoft.com/kb/910449&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://support.microsoft.com/kb/891031"&gt;http://support.microsoft.com/kb/891031&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/aa302393.aspx"&gt;http://msdn.microsoft.com/en-us/library/aa302393.aspx&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogs.iis.net/aggbug.aspx?PostID=2756525" width="1" height="1"&gt;</description><category domain="http://blogs.iis.net/sakyad/archive/tags/IIS+6.0/default.aspx">IIS 6.0</category><category domain="http://blogs.iis.net/sakyad/archive/tags/Process+Identity/default.aspx">Process Identity</category><category domain="http://blogs.iis.net/sakyad/archive/tags/ASP.NET+Impersonation/default.aspx">ASP.NET Impersonation</category><category domain="http://blogs.iis.net/sakyad/archive/tags/ASP.NET/default.aspx">ASP.NET</category></item><item><title>Webdav on IIS 6.0 Troubleshooting</title><link>http://blogs.iis.net/sakyad/archive/2008/11/19/webdav-on-iis-6-0-troubleshooting.aspx</link><pubDate>Wed, 19 Nov 2008 23:52:23 GMT</pubDate><guid isPermaLink="false">50bcf3b4-f6fe-4638-adff-0c150e922e99:2756474</guid><dc:creator>sakya_dasgupta</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.iis.net/sakyad/rsscomments.aspx?PostID=2756474</wfw:commentRss><comments>http://blogs.iis.net/sakyad/archive/2008/11/19/webdav-on-iis-6-0-troubleshooting.aspx#comments</comments><description>&lt;p align="justify"&gt;Web Distributed Authoring and Versioning (WebDAV) extends the HTTP/1.1 protocol to allow clients to publish, lock, and manage resources on the Web.&lt;/p&gt;  &lt;p align="justify"&gt;Integrated into IIS, WebDAV allows clients to do the following:&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#8226; Manipulate resources in a WebDAV publishing directory on your server. For example, users who have been assigned the correct rights can copy and move files around in a WebDAV directory.&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#8226; Modify properties associated with certain resources. For example, a user can write to and retrieve a file's property information.&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#8226; Lock and unlock resources so that multiple users can read a file concurrently. However, only one person can modify the file at a time.&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#8226; Search the content and properties of files in a WebDAV directory.&lt;/p&gt;  &lt;p align="justify"&gt;The steps for setting up a simple Webdav publishing directory can be found at the following knowledge base location : &lt;a href="http://support.microsoft.com/kb/323470"&gt;http://support.microsoft.com/kb/323470&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Webdav is a pretty straight forward protocol , however there are a number of things one needs to keep in mind while configuring it and using .&lt;/p&gt;  &lt;p align="justify"&gt;In addition to the above mentioned benefits of Webdav , it comes in handy specially in scenarios where one wants to setup a secure FTP site , as this is the only alternative available on IIS 6.0 . By default FTP is not a secure protocol and the username and password are sent across as clear text, to be more specific it is a hashed value , and can be easily decoded , making it quite vulnerable . Off-course the entire question depends on whether security is a major factor or not.....which I think is quite a rhetorical question to ask. &lt;/p&gt;  &lt;p align="justify"&gt;Note : On IIS 7 We can have FTP over a secure channel (FTPS) giving it more security options... but then again that&amp;#8217;s a completely different topic.&lt;/p&gt;  &lt;p align="justify"&gt;By-default webdav doesn&amp;#8217;t have a security measure which we can enable with a simple click or tick , however we can couple it with Basic Authentication in IIS and SSL to make it quite secure. But I&amp;#8217;ll discuss more on this a little later . &lt;/p&gt;  &lt;p align="justify"&gt;There can be numerous frontiers to explore on Webdav , however in this article I&amp;#8217;ll be covering some of the most common issues with webdav configuration and share my personal experience while working on one of my recent cases. &lt;/p&gt;  &lt;p align="justify"&gt;Webdav can be accessed through one of the following webdav clients ( using Microsoft technologies) : &lt;/p&gt;  &lt;p align="justify"&gt;&amp;#8226; Windows clients (Windows 2000 and Windows XP): Connect to a WebDAV directory by adding the directory to the list of Network Places and display the contents as if it were part of the same file system on your local computer. Once connected, you can drag and drop files, retrieve and modify file properties, and complete many other file-system tasks. &lt;/p&gt;  &lt;p align="justify"&gt;&lt;b&gt;Note: As far as Windows Vista is concerned , It behaves a little differently and I&amp;#8217;ll discuss that later in this article .&lt;/b&gt;&lt;/p&gt;  &lt;p align="justify"&gt;You can also connect using the command-line client (known as &lt;a href="http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/a71e40bd-ecb0-4f87-8f6c-935fe6552565.mspx"&gt;WebDAV Redirector&lt;/a&gt;). This client allows you to use existing applications across the Web and share files through firewalls and proxy servers.&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#8226; Internet Explorer (versions 5.0 and 6.0): Connect to a WebDAV directory by opening the target directory as a Web folder and complete the same file-system tasks as Windows clients.&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#8226; Microsoft Office products (Office 2000 and Office XP): Create, publish, edit, and save documents directly into a WebDAV directory through any application in Office 2000 or Office XP.&lt;/p&gt;  &lt;p align="justify"&gt;Note : After the Webdav Configurations on Windows Server 2003 testing the Webdav from the server itself is not a very good idea. It is always best practice to test its working from a client machine. After all that&amp;#8217;s the whole intention of setting up webdav right, using from client machines .&lt;/p&gt;  &lt;p align="justify"&gt;In general the one should keep in mind the following steps while configuring Webdav on IIS 5.0 or IIS 6.0 : &lt;/p&gt;  &lt;p align="justify"&gt;&amp;#183; Create the webdav user account(s)&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#183; Give the user &amp;#8220;log on locally permissions&amp;#8221;&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#183; Enable Webdav from Web service Extensions (only on IIS 6.0)&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#183; Create the content folder &lt;/p&gt;  &lt;p align="justify"&gt;&amp;#183; Create the website (or virtual directory) with directory browsing and write &lt;/p&gt;  &lt;p align="justify"&gt;Permissions &lt;/p&gt;  &lt;p align="justify"&gt;&amp;#183; Adjust &amp;#8220;Security tab&amp;#8221; (NTFS) permissions on the content folder &lt;/p&gt;  &lt;p align="justify"&gt;&amp;#183; Adjust &amp;#8220;Web Sharing tab&amp;#8221; settings on the content folder&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#183; Test with browser using File &amp;gt; Open &amp;gt; open as webfolder &amp;gt; &lt;a href="http://www.fqdn.com/virtdir"&gt;http://www.fqdn.com/virtdir&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Note : Preliminary: If the webserver is a Windows 2000/IIS5 box, I highly recommend that    &lt;br /&gt;you ensure that the machine is on latest service pack and latest cumulative fixes.     &lt;br /&gt;This can save from many headaches as there were many functionality and security     &lt;br /&gt;inclusions particularly in the various service packs for Windows 2000.&lt;/p&gt;  &lt;p align="justify"&gt;&lt;b&gt;&lt;u&gt;Common Issues with Webdav Configuration : &lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p align="justify"&gt;1. As Mentioned earlier In IIS6, unlike IIS5, &lt;b&gt;webdav&lt;/b&gt; must be enabled in the ISM&amp;#8217;s &amp;#8220;Web Service Extensions&amp;#8221; before &lt;b&gt;Webdav&lt;/b&gt; will ever work.&lt;/p&gt;  &lt;p align="justify"&gt;It should be (and probably will be ) mapped to &lt;b&gt;c:\windows\system32\inetsrv\httpext.dll&lt;/b&gt;&lt;/p&gt;  &lt;p align="justify"&gt;However on a 64 bit Server make sure that the physical path for webdav from web service extensions is &lt;b&gt;c:\Windows\syswow64\inetsrv\httpext.dll&lt;/b&gt; When the Enable32bitApponWin64 has not been set to TRUE. This can be easily checked by starting the windows task manager. If you see inetinfo.exe *32 or w3wp.exe *32 then the above mentioned switch has been set to TRUE in the IIS metabase. &lt;/p&gt;  &lt;p align="justify"&gt;&lt;b&gt;Note :&lt;/b&gt; In IIS5 webdav will almost certainly be enabled by default. If there are problems with it working in IIS5, consider KB 241520 to see if someone disabled it in the registry (HKLM\SYSTEM\CurrentControlSet\Services\W3SVC\Parameters &amp;gt; Value name: DisableWebDAV / Data type: DWORD / Value data: 1) and re-enable it by removing that key (or by setting its value to 0?). Otherwise check to see if there is a urlscan.ini which is denying webdav verbs. (A third alternative may be with appmappings and a fourth could pertain to ACLs on the httpext.dll? But that&amp;#8217;s really getting ahead of ourselves here!) The exception for IIS6 may be that if IIS5 was upgraded to IIS6, webdav will probably be enabled by default.&lt;/p&gt;  &lt;p align="justify"&gt;2. &lt;em&gt;Webdav Configured properly in the server However on tying to open as Webfolder from a &lt;/em&gt;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;em&gt;client machine we get the following error message :&lt;/em&gt;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;b&gt;Internet Explorer could not open http://www.fqdn.com /testvir as a web Folder. Would you like to see its default view instead?&lt;/b&gt;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Try to isolate the issue further .&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#183; If the webdav folder is on local machine. Make sure proper NTFS permissions have been set.&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#183; Make sure all the above mentioned steps to set up Webdav have been followed&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#183; Try to access Webdav folder from different Client machines XP/2003 Client/Vista etc. It is observed that at times webdav related issues can be client specific.&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#183; In case of Windows XP and Vista make sure that the Web Client Service is set to automatic and is currently started. You can configure this from Start&amp;gt;Run&amp;gt;services.msc&amp;gt;Web Client Service&amp;gt;Properties . &lt;/p&gt;  &lt;p align="justify"&gt;&amp;#183; Try to test Webdav from the network places and not from Internet Explorer. Make sure you delete the webdav folder that is created by default when one uses IE to test it , and then test webdav once again from network places.&lt;/p&gt;  &lt;p align="justify"&gt;3. &lt;em&gt;Webdav Not working from Windows Vista Client machine : &lt;/em&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Note : The &lt;b&gt;Web Extender Client (codename Rosebud)&lt;/b&gt; is not shipped with Windows Vista, and WebDAV functionality in Vista is limited to the capabilities of the Web Client     &lt;br /&gt;service (the WebDAV redirector.) Applications written to leverage Rosebud and     &lt;br /&gt;previously working without issue on Windows XP machines may fail in Windows Vista.&lt;/p&gt;  &lt;p align="justify"&gt;Resolution :&lt;/p&gt;  &lt;p align="justify"&gt;=========&lt;/p&gt;  &lt;p align="justify"&gt;The additional WebDAV functionality of the Web Extender Client had been exposed    &lt;br /&gt;previously in Windows 2000 and Windows XP as the Web Folders component, MSDAIPP,     &lt;br /&gt;and was accessed in Windows 2000 via Windows Explorer and in Windows XP via the Add     &lt;br /&gt;Network Place Wizard. Web Folders have been not been included in Windows Vista, but     &lt;br /&gt;the Web Folders component is still available as part of a Microsoft Office     &lt;br /&gt;installation. Installing Office 2007 on a Windows Vista client experiencing Web     &lt;br /&gt;Extender Client-dependent connectivity failure resolves the issue.&lt;/p&gt;  &lt;p align="justify"&gt;&lt;b&gt;Note on 64 bit System Compatibility : &lt;/b&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Rosebud is a 32-bit component, so although it will install on a 64-bit operating    &lt;br /&gt;system, Explorer (shell, common dialogs, My Network Places, etc.) and other 64-bit     &lt;br /&gt;applications will not be able to use it. 64-bit applications will be limited to     &lt;br /&gt;leveraging the native Web Client service redirector for WebDAV. There are currently     &lt;br /&gt;no plans for porting this deprecated Windows component to future 64-bit versions of     &lt;br /&gt;the operating system.&lt;/p&gt;  &lt;p align="justify"&gt;In order to get Webdav Working Install the following update for windows vista available at &lt;a href="http://support.microsoft.com"&gt;http://support.microsoft.com&lt;/a&gt; &lt;b&gt;KB 907306&lt;/b&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Here is the Public Download Site: &lt;/p&gt;  &lt;p align="justify"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyID=17c36612-632e-4c04-9382-987    &lt;br /&gt;622ed1d64&amp;amp;DisplayLang=en&lt;/p&gt;  &lt;p align="justify"&gt;4. &lt;em&gt;Webdav Configured to work with Basic authentication not working from Windows Vista Client machines :&lt;/em&gt;&lt;/p&gt;  &lt;p align="justify"&gt;By default basic authentication is turned off in windows vista and windows 2008 box's as a security measure . Because a user's credentials can be sent in clear text and can be possibly compromised, Windows Vista and Windows XP SP2 include functionality that permits you to enable or to disable the use of Basic authentication by the DAV redirector&lt;/p&gt;  &lt;p align="justify"&gt;When Basic authentication is disabled, either the client computer uses a different authentication method (if the server supports a different authentication method), or the request fails.&lt;/p&gt;  &lt;p align="justify"&gt;Resolution:&lt;/p&gt;  &lt;p align="justify"&gt;=========&lt;/p&gt;  &lt;p align="justify"&gt;Go to the following registry location: Start&amp;gt; run&amp;gt; Regedit&lt;/p&gt;  &lt;p align="justify"&gt;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters&lt;/p&gt;  &lt;p align="justify"&gt;By default the DWORD value &lt;b&gt;UseBasicAuth&lt;/b&gt; is set to 1 in vista&lt;/p&gt;  &lt;p align="justify"&gt;Set this to a value of 2. &lt;/p&gt;  &lt;p align="justify"&gt;Restart the machine and if all other configurations are as expected webdav should be up and running using Basic Authentication.&lt;/p&gt;  &lt;p align="justify"&gt;Find the relevant information in the following KB 841215&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://support.microsoft.com/default.aspx?scid=kb;EN-US;841215"&gt;http://support.microsoft.com/default.aspx?scid=kb;EN-US;841215&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;As mentioned earlier since we don&amp;#8217;t have a secure FTP in IIS 6.0 we can set up a secure webdav using Basic Authentication. However since Basic auth passes password as a hashed value which can easily be compromised , It can be coupled with a server certificate to enhance security . &lt;/p&gt;  &lt;p align="justify"&gt;&lt;b&gt;&lt;u&gt;Setting Up Webdav From Network Places in Windows Vista : &lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Please Visit the Following Website For step by step set up instructions along With useful screenshots&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://kb.wisc.edu/luwmad/page.php?id=6280"&gt;http://kb.wisc.edu/luwmad/page.php?id=6280&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;I have tried to cover some most common configuration issues while configuring Webdav. However there can be many more areas to explore for ex. Webdav Publishing folder from a remote location etc. I&amp;#8217;ll try to cover these topics in my next post :)&lt;/p&gt;&lt;img src="http://blogs.iis.net/aggbug.aspx?PostID=2756474" width="1" height="1"&gt;</description><category domain="http://blogs.iis.net/sakyad/archive/tags/FTPS/default.aspx">FTPS</category><category domain="http://blogs.iis.net/sakyad/archive/tags/IIS+6.0/default.aspx">IIS 6.0</category><category domain="http://blogs.iis.net/sakyad/archive/tags/Webdav/default.aspx">Webdav</category></item></channel></rss>