Category Archives: SharePoint

Team Foundation Server 2010 Installation Experiences and Lessons Learned

Do it right the first time! 🙂

There’s quite a few posts on Team Foundation Server 2010 (TFS) and how to install and configure it, as well as a really good CHM file from Microsoft on the same topics, so I won’t go through duplicating what everyone else has done and will link to one at the bottom of this post.  I’m writing this just to relay the experience I had with getting the product configured just the way I wanted it, or some facsimile thereof and some lessons learned.


After viewing some videos on YouTube of TFS, reading some of the Microsoft marketing material, and some of the posts on it, I decided to stand up TFS in my environment to see how well it works and to explore changes since the last version.  Right now, the team I lead isn’t really using any ‘set’ collaborative product.  We tend to work in small teams on projects so the need isn’t really there, though I’m sure the organization wouldn’t hurt.  We’re currently using Subversion as our source repository and occasionally use MOSS or WSS to collaborate.  Otherwise it’s phone calls and emails since we also tend to bounce around the country.  Enough background, on to TFS installation…

After reading through a few blog posts and Microsoft’s documentation on how to install and configure TFS, I stood up a Windows Server 2008 R2 VM and installed SQL Server 2008.  I was going with a single server install.  I followed the documentation to the letter for a single server install, and everything worked out just fine.  WONDERFUL!  GREAT!  So far…

Continue reading Team Foundation Server 2010 Installation Experiences and Lessons Learned

MOSS: An Unexpected Error Has Occurred

If you’ve worked with MOSS long enough, I’m sure you’ve seen this error.  The reasons that it occurs are numerous, and may even be blamed on poor error handling / reporting by the programmers.

If you’ve come across this error, and turned <customErrors /> off in your MOSS site’s web.config and it still occurs, you may have run into the issue that I did.

This can occur right after MOSS installation, or on a farm that has been up and running for some time, and this is something quick that you can check to make sure it’s not the reason, especially if your server is managed through AD or an admin that is really tight on server security.

My instance of this error was on a completely locked down Windows Server 2008 installation.  The cause was one setting that was applied through Active Directory (AD) Group Policy Objects (GPO), Use FIPS compliant algorithms for encryption, hashing, and signing.

Continue reading MOSS: An Unexpected Error Has Occurred

SharePoint Virtualized = Excellent For Production

Though it goes against my better nature, as it is not like me to go against what some really big brains say, I’m tired of hearing from many people as well as ‘company lines’ that SharePoint and SQL Server are not good candidates for virtualization.  It’s easy to sell it that way, but it’s just not true.

The simulations and production deployments that I have been a part of speak otherwise, along with candidate architectures and testing that have been conducted by EMC.  As a matter of fact, I would say that SharePoint and SQL Server are excellent candidates for virtualization, as every production implementation should consider their COOP (Continuity of Operations) and DR (Disaster Recovery) scenarios as a major point of design.

Continue reading SharePoint Virtualized = Excellent For Production

CKS EBE and Automatic Detection of Trackbacks… no no… you get SPAM hell.

If you’re using CKS EBE and have a solution to this, please feel free to let me know.

The automatic detection of blogs that post to your site is a pretty nice feature of CKS EBE, however, from what I see, there is no error checking.  So if sites point to yours, you’ll eventually detect it through trackbacks, and you’ll post their spam onto your site.

If this has happened to you, the easiest solution is to create a template for the list that contains the spam (trackbacks received), delete the list that has the spam, and recreate it with the exact same name.  Hopefully you have some experience with MOSS so doing this won’t be too difficult, however if you need further instructions, let me know.

Keep in mind that following this procedure will cause all of your trackbacks received to be lost.  If this hasn’t happened to you yet, you can disable this feature under "blog settings > Receive trackbacks from other blogs".

Good luck, happy blogging, and hey… at least I was #3 for ‘orgasmoverdose’ on google for a little while. hahaha.  Damn spammers.

Run MOSS Against Multiple Active Directories

One of the great new features that MOSS introduced, was an easy way to have the same information shared between multiple portals/sites.  By extending your web applications, you can have separate authentication providers utilized to reach the same information using Forms Based Authentication (FBA).  FBA is usually associated with a custom SQL server database, or some other authentication mechanism, however you can use it to provide AD services as well.

Since implementing FBA in MOSS is pretty well documented already, I won’t go down that route, but just tell you what needs to be changed for it to work with Active Directory (AD).  If you need an article that talks about FBA specifically, try this one:  This article assumes you have implemented FBA already or know how to, and just need the specifics for the ADMembershipProvider.

This article also assumes that you have extended a web application to use FBA.  Though there is nothing preventing you from using this on a primary web application and not using an extended web application, I use the term ‘extended web application’ to mean the web application that you want to set up for FBA.

In the extended web application’s web.config file, change the connectionString element to:

<add name=”ADConnectionString” connectionString=LDAP://[ldapquery]/>

I placed this node between </configSections> and <SharePoint>.

The next change is to the membership node and should read:

<membership defaultProvider=”ADMembershipProvider”>
attributeMapUsername=”sAMAccountName” />

This node, I placed between <sessionState … /> and </system.web>.  Please make sure that the ‘type’ line is properly formatted XML as this post may not display properly.  Put type=”…” all on one line.

Make sure to replace [ldapquery], [accountName], and [password] with the information specific to your AD.  You can even change sAMAccountName as the attributeMapUsername to another field in your AD if that is appropriate.  Your domain administrators will be able to help you with the LDAP query if you aren’t familiar with the technology or the domain’s structure.

You’ll also need to change the nodes in the Central Administration web.config and change the authentication provider at Central Administration > Application Management > Authentication Providers (all of which you should have touched with doing a typical FBA configuration).

Infrastructure Requirements:

  • the account used above should have ‘read’ permissions on the directory (a standard user account will usually work.)
  • the appropriate firewall ports will need to be open if traveling outside of the local network – port 389 by default.

Again, this article assumes that you know what you’re doing with MOSS and FBA and just need the specifics for the AD integration.  I had a hard time finding that information at the time, so I decided to post it here.  If you have any questions, post them into comments and I’ll get them answered ASAP.

Tutorial: Creating A MOSS Development Environment Part IV – Configuring MOSS

Ok, this is the last entry in this series of tutorials for setting up a MOSS development environment.  In the prior posts, we installed SQL Server, installed MOSS, installed VS.NET and some other supporting products, and in this post, we’ll configure MOSS.  The plan for this configuration is to go through the basic farm configuration with assigning roles to our server and setting up a web application.  As an additional task, we’ll extend the web application that we create and configure it for secure (https) access.  I’ve discovered that in most deployments, clients are looking for secure websites, so it makes sense to develop on one whenever possible.

Here are the links to the prior posts in this series:

Tutorial: Creating A MOSS Development Environment Part I – SQL Server Installation
Tutorial: Creating A MOSS Development Environment Part II – MOSS Installation
Tutorial: Creating A MOSS Development Environment Part III – VS.NET Installation


There are a few things that we’ll need to do as prework for completing this tutorial.  Create the following accounts:

WssSearchService (we’ll use this account for all of SharePoint’s search functionality)
SpsContentAccess (used for the content access account for indexing)
MainAppPool (we’ll use this for the app pool account)
(will be used for the SSP application pool)
MossWebApp01 (will be used for the main web application)

Continue reading Tutorial: Creating A MOSS Development Environment Part IV – Configuring MOSS

Tutorial: Creating A MOSS Development Environment Part II – MOSS Installation

Ok, here we go with part 2 of this tutorial.  The part where we actually do the MOSS installation.  If you missed part 1, you can find it here: Tutorial: Creating A MOSS Development Environment Part I – SQL Installation.  If you’re back after doing part 1 and are ready for part 2, "Welcome back!"  So without any further ado and hoopla, I’m just going to copy and past the Disclaimer and The Environments from part one for your perusal, and jump right into the MOSS Installation.

Continue reading Tutorial: Creating A MOSS Development Environment Part II – MOSS Installation