Displaying Exchange public folders in Sharepoint

The Sharepoint / Exchange relationship is not exactly mature. I find myself struggeling to explain customers why seemingly simple stuff is kinda hard. A feature that have been requested by nearly all of our customers is to view exchange public folder contents in a Sharepoint site. So far we've done it in a couple of different ways.

What I really, really want to have is that Public Folder - Mail Library (the unborn sibling of the Document Library) integration. All complete with mail IFilters and all those goodies. That beeing virtually impossible to implement if you're not in MSFT, I really want to do is to use Outlook Web Access for this. OWA is an extremely powerful online Exchange viewer and I can never imagine that I'd be able to top it off. The only problem with OWA is that it uses Basic Authentication, which is very nice for those remote (through proxy) connections, but displays an annoying authentication box with every browser session.

Other than this OWA is great for displaying public folders simply by referencing the URL in a Page Viewer webpart. The visuals can even be altered by using a bit of client side scripting if you want to remove the navbar or other elements (provided as a property for your server-side pleasure).

The main principle when using OWA is that you're sooner or later going to authenticate. I started making a webpart that used a System.Net.WebRequest with credentials to retreive a public folder, but failed by design. The OWA html is not possible to clean up enough to avoid breaking sharepoint html (meet the html base element). This leaves two options: using an iframe or a new window. The IFrame would be the only good thing (it's a webpart) so I'd end up consuming an ASPX that passed credentials into OWA and returned the html for the public folder which again would be consumed by the IFrame.

Phuui, feels no good! Although the solution could have been made generic by passing the folder url and potentially encrypted user/pwd to the aspx it is still messy, and would require additional deployment. The main point is that when the public folder is presented for the end user, he still has to be authenticated on the next request. One might implement a URL rewriting solution, and eventually end up with some pseudo WSRP implementation, but no.

By the way; single sign-on sounds very correct when you have a authentication box popping up, especially when it's Microsofts own popup-devil. SSO is not suited here because 1. you want the same credentials as the current identity, and 2. you'd have to code against the SSO api's in Sharepoint context (the webpart) which creates the problem with the messy OWA html.

Update: Noel comments that the Outlook View Control could be used. I have to admit I've only just tried it, but as far as I can see this solution merely displays your Outlook client folders from the local machine. The Inbox view shows what's in my personal pst file, but not the newest mails in my Exchange inbox (until I do send/receive that is). This makes it pretty useless outside the firewall. Additionally it seems like viewing public folders with this tool has been discontinued, and it does feel a bit, ehm, old-school... Correct me if I'm wrong:-)

3 Comments

Comments have been disabled for this content.