In 2008 I’ve released a Web Part, which enables your users to access files on your fileservers through SharePoint. Original post. This Web Part has been downloaded many times. With this new version, I’ve tried to deal with the most asked questions (like Kerberos), which will make the Web Part easier to use. Naturally new features have been implemented, to get you to upgrade to the new version.
With this release, the Web Part requires SharePoint Foundation / Server 2010. For the users who are still using WSS V3, please stick to the old version, or upgrade your farm 🙂
First some screenshots, so you know what I am talking about.
- Download files from your fileservers via SharePoint
- Download a folder with all containing files as zip-file
- Upload files to a fileserver
- Delete files from a fileserver
- View the file properties
- By default, the fileserver path has to be UNC. Local paths are not allowed, so a user cannot enter C:\ to access e.g. the web.config or other files on the local server
Of coarse the access to the files is security trimmed. Meaning that if your users would not be able to access files with their logon from their client, they won’t be able from the Web Part!
For authorization against the fileserver, the credentials of the currently logged on user is used. For SharePoint (and any other application as well), it is necessary to configure the WebApplication which is hosting the Web Part to use Kerberos instead of NTLM. Otherwise a server cannot pass the user credentials forward to a second server. This is called the “Double-Hop problem”. To get a glimpse about the topic, take a look at an article I wrote some time ago. Configuring Kerberos for SharePoint. That post has been written for SharePoint V3! But there are plenty of Kerberos Guides out there for SP 2010. And a whitepaper from Microsoft: Configuring Kerberos Authentication for SharePoint 2010 Products http://technet.microsoft.com/en-us/library/ff829837.aspx
If you do not configure Kerberos for the WebApplication, the Web Part will detect that, and show a notification in the properties section.
A small sidenote: If you are going to use local paths (meaning a folder on your SharePoint server), you can continue using NTLM.
Another good starting point for Kerberos-Troubleshooting can be found here: http://blogs.msdn.com/b/friis/archive/2009/12/31/things-to-check-when-kerberos-authentication-fails-using-iis-ie.aspx
To use the WebPart, you’ll need to at least configure a path. Files – and subfolders – from that path will be shown.
Additionally, there are some properties, which modify features of the Web Part.
The Paging size defines, how many files are displayed on one page. With the next three checkboxes, you can allow files to be downloaded as zip, allow files to be uploaded and to be deleted.
I recommend to leave the caching activated. Deactivate only, if you have specific reasons, because there will be more todo for your SharePoint server and fileserver.
Using a local path as source
In case you want to use a local path as source for the Web Part, you have to allow the path to be used. To do so, follow the steps below.
- locate the feature.xml file (“C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\FEATURES\FileserverAccess\Feature.xml”)
- Edit the file in your favorite editor
- Look for the property with the key “AllowLocalPaths” and modify the value to correspond to the driveletter you wish to use
Replace “Driveletter” with e.g. “C”. You can specify more than one drive letters. In that case use a “;” as divider
- Save the feature.xml
- Restart your IIS (iisreset)
Remember that you’ll need to modify the file on all of your FrontEnd SharePoint Servers! After an upgrade of the Web Part, the file has to be modified again. If you do not allow local drives, the Web Part will show an error.
This version is compatible to the old version. So you can simply upgrade the solution and benefit of the new features!
Download the new version for SharePoint 2010 (Foundation and Server): RH.FileserverAccess.wsp
Download the old version for WSS V3 / MOSS 2007: RH.FileserverAccess.wsp
Update March 2012
- I did not get the Web Part working in my claims based authentication test-environment. Additionally, the Web Part properties will show the current user and authentication method. If you see Negotiate, your environment is set up correctly (for classic authentication).
- Another small update, which prevented the upload from working in Chrome