Robert McMurray's Blog [MSFT]

Discussing IIS, FTP, WebDAV, FPSE, WMI, ADSI, ISAPI, ASP, Java, FastCGI, etc. ;-)

WebDAV Module for Windows Server 2008 GoLive Beta is released

WebDAV Module for Windows Server 2008 GoLive Beta is released

Rate This
  • Comments 8

Earlier today the IIS product team released the GoLive beta version of the new WebDAV extension module for IIS 7. (This version is currently available for Windows Server 2008 only.)

Listed below are the links for the download pages for each of the individual installation packages:

We've loaded this version with many great new features such as:

  • Integration with IIS 7.0: The new WebDAV extension module is fully integrated with the new IIS 7.0 administration interface and configuration store.
  • Per-site Configuration: WebDAV can be enabled at the site-level on IIS 7.0, which differed from IIS 6.0 where WebDAV was enabled at the server-level through a Web Service Extension.
  • Per-URL Security: WebDAV-specific security is implemented through WebDAV authoring rules that are configured on a per-URL basis.

Here are a couple of screenshots of the new WebDAV UI in action:

WebDAV UI WebDAV Authoring Rules

Additional documentation about installing and using this version of WebDAV can be found at the following URL:

Installing and Configuring WebDAV on IIS 7.0:
http://go.microsoft.com/fwlink/?LinkId=105146

While this release is a beta version and not technically supported, feedback about this release and requests for information can be posted to the following web forum:

IIS7 - Publishing:
http://forums.iis.net/1045.aspx

I would be remiss if I did not mention that special thanks go to:

  • Keith – for building it
  • Eok, Sriram, Ciprian – for testing it
  • Gurpreet, Brian, Reagan – for making it look pretty
  • Vijay, Will, Taylor – for helping keep everything on track ;-]

Thanks!

Comments
  • PingBack from http://msdnrss.thecoderblogs.com/2007/12/23/webdav-module-for-windows-server-2008-golive-beta-is-released/

  • So what exactly does it support? Exactly what earlier IIS versions did (RFC2518 minus a few things)? Or does it support RFC4918? Extensions? Please clarify :-).

  • That’s a great question - this new module for IIS 7 supports most features of RFC2518 and RFC4918, and some extensions.

    For example, from RFC2518 we support the basic WebDAV-related verbs like GET, PUT, DELETE, MKCOL, COPY, MOVE, etc. We also support working with properties via PROPFIND and PROPPATCH, and we will document more about that soon. We don't currently have a lock provider, so that feature is effectively disabled at the moment.

    From RFC4918 we allow you to disable PROPFIND requests with infinite depth, which is a great security feature.

    From both RFCs we created a detailed list of all the HTTP response conditions that can occur and tried to make sure that we return the correct responses for every condition, so please let us know if we missed something. ;-]

    We also support several extensions; for example, we support the Translate header when working with scripts, and we support the IsCollection and IsHidden properties.

    I hope this helps!

  • > From RFC4918 we allow you to disable PROPFIND requests with infinite depth, which is a great security feature.

    Well, is that it? That's not really new, just a clarification of RFC2518. I was trying to understand whether the server identifies itself as "level 3" server, and supports the new features (such as absolute paths in the If and Destination headers, and the PROPFIND extension).

    > From both RFCs we created a detailed list of all the HTTP response conditions that can occur and tried to make sure that we return the correct responses for every condition, so please let us know if we missed something. ;-]

    Is there a public test server? I currently do not have access to an IIS 7.0 install...

    > We also support several extensions; for example, we support the Translate header when working with scripts, and we support the IsCollection and IsHidden properties.

    Any idea what "isCollection" actually is for? It duplicates information from the resource type, and in many years of supporting customers, I never found a client that actually needs it...

  • In all actuality there are a large number of new features in this new version of WebDAV, but many of the changes in this new version of WebDAV are centered around the management of WebDAV in IIS and not necessarily features that are specific to WebDAV. In my previous response I was simply adhering to the nature of your question which seemed to be exclusively about RFC compliance, so I apologize for any miscommunication this might have caused regarding new features.

    By way of explanation, the previous version of WebDAV for IIS 5 and IIS 6 was written by a different team of developers than the team that created IIS, so even though the two technologies (IIS and WebDAV) were related there was limited cross-technology support. As a direct result, there was real no user interface for WebDAV in IIS. In addition, the previous version of WebDAV could only be enabled at the server-level, and other IIS features were "recycled" to have new WebDAV meanings; for example, IIS 5 and IIS 6 required users to enable directory browsing in order to see PROPFIND listings.

    This new version of WebDAV changes all that through being completely rewritten from the ground up by one of the most senior developers on the IIS product team, and incorporates a large number of design changes that are based on feedback from customers and other developers/program managers on the IIS product team. Because of these changes, WebDAV is more tightly integrated into IIS than previous versions. This means that WebDAV has a feature-rich user interface inside the IIS management tool, and WebDAV no longer shares "recycled" configuration settings with other HTTP features - it has its own schema-based configuration settings that define the WebDAV behavior. In addition, WebDAV is no longer an "all or nothing" configuration setting for your entire server - WebDAV can now be enabled or disabled on a site-by-site basis. WebDAV also contains its own per-URL security settings, so WebDAV access can be customized throughout your content space. Locks and properties are now stored in storage providers using a model that we designed that allows us to add additional providers later. Wherever possible we tried to make backwards-compatible WebDAV settings optional, so you can configure your server with the features that your clients need while balancing those options with RFC compliance.

    As far as RFC compliance is concerned, RFC4918 did not exist when we began work on this new WebDAV module in the Fall of 2006; at that time RFC2518 was the only governing document. RFC4918 came out in June of 2007 so we had access to it sometime in early July, and we examined it to see what changes had been made since RFC2518. That being said, by early August we were already in feature lockdown mode as part of the final stages for our initial technical preview of the new WebDAV module that was released in mid-September. After we released the technical preview to a limited number of partners for testing we chose to implement some features from RFC4918 in October, but due to time constraints we could not implement everything in that document before we entered the lockdown phase in November for this release. As such, we cannot say that we are a "level 3" WebDAV server.

    You had asked about which extensions to WebDAV this version supported, so I mentioned the "Translate" header and the "IsCollection"/"IsHidden" properties. All of these features were proposed in Internet Drafts that were never officially turned into RFCs, but since they were implemented in previous versions of WebDAV for IIS we felt the need to support them in this version. Eventually the "Translate" header evolved into US Patent 6,449,633, and as such we fully support it. The "IsCollection" and "IsHidden" properties are simply supported for backwards-compatibility, and you are correct that "IsCollection" is a duplication of information in the resource type, but we didn’t want to run the risk of preventing any WebDAV clients from working with this new version so we couldn’t take the chance at completely removing it; with that in mind we added a way that you can disable it.

    I hope this clarifies things a bit better!

  • Yes, thanks for the clarification. I hope that the new code base and better integration leads to the WebDAV support getting more attention in the future. In the last years, we found multiple bugs in IIS and never managed to get any kind of feedback out of MSFT...

    With respect to RFC4918: June 2007 was the date of publication, but the internet drafts had been around for many years (participate in the IETF mailing lists!).

    BR, Julian

  • Hello,

    My company really needs LOCK support.  You say in one posting that you lack a lock provider, and in the next posting you say "Locks and properties are now stored in storage providers using a model that we designed that allows us to add additional providers later."  So when and how can we expect LOCK support?

    Thanks,

    Mike B

  • Hi Mike,

    We are currently testing an implementation for WebDAV LOCK support in a beta of WebDAV that we will release in the near future. Right now we are performing compatibility testing with several WebDAV clients in order to make sure that everything works as it should. ;-)

    Thanks!

Page 1 of 1 (8 items)
Leave a Comment
  • Please add 6 and 8 and type the answer here:
  • Post