Fun with RSS

My customer wanted to use the MOSS out of the box RSS web parts to use feeds from external sources, like CNN, BBC etc., as well as internal sources, a local Community Server. They ran into a few problems:

 

Authenticated RSS Feeds

MOSS RSS web parts only support anonymous and Kerberos authentication. When they tried to connect a local Community Server RSS feed that needed a logon they saw this message in the web part window:

 

The RSS Web Part does not support authenticated feeds

As far as I know you can't make a list or library anonymous in MOSS you have to do the whole site so the only way round it is to go Kerberos. Most of the time you'll use NTLM when installing MOSS because its quick and easy. In fact Kerberos is actually faster to authenticate and more secure than NTLM so it's better in the long run if you use it. With Kerberos you need to make some changes to Active Directory and some MOSS admins won't have permissions to do that. You need to get your domain admins involved.

 

There are two great articles about this topic:

 

https://blogs.msdn.com/markarend/archive/2006/10/03/RSS-Viewer-web-part-and-authenticated-feeds.aspx

https://msdn.microsoft.com/msdnmag/issues/05/09/SecurityBriefs/default.aspx

 

To follow this up I'm going to get some time in the virtual environment and post a step by step guide on how to use Kerberos in a medium farm. I bet you can't wait for that.

 

External RSS Feeds

SharePoint needs to be told if your network uses a proxy to get out on to the internet. If you try and link up a web part to an external feed without doing that you'll see this error in the web part window:

 

An unexpected error occurred processing your request check the logs for detail and correct problem

 

Not very helpful right?  You can give MOSS access to the internet by adding the proxy details to the web.config. The web.config is found in the root of the web application folder. By default that is c:\inetpub\wwwroot\wss\virtualdirectories\<web app name>. It may have been changed when it was created so use IIS Manager to check.  Edit the web.config in notepad and add the following section (bits in red are your addresses):

 

Warning: messing with the web.config is potentially disastrous.Make a backup.

 

<configuration>

<system.net>

<defaultProxy>

<proxy bypassonlocal="true" proxyaddress="10.1.1.1:8080" usesystemdefault="true” />

<bypasslist>

<add address="server.fqdn.com” />

</bypasslist>

</defaultProxy>

</system.net>

</configuration>

 

If you use a fully qualified proxy name be sure to put https:// on the front. It doesn't seem to work without it.