Imagine you’ve been handed a farm with no documentation,  or you have documentation and you don’t trust it, or you just forgot to document it.  You spend some time cleaning it up and making it nice and shiny with proper documentation.  Now you need to add a new server to the farm and you don’t have that all important new piece of information in 2010 called the Farm Passphrase.  Currently there is no way to retrieve the Farm Passphrase from SharePoint, however there is the option to reset the Passphrase to a new one by using PowerShell.

In order to do this, you must be a member of the SharePoint_Shell_Access database role on the SharePoint Configuration database. Check Get-SPShellAdmin and Add-SPShellAdmin.

Open the SharePoint 2010 Management Shell (Start > All Programs > Microsoft SharePoint 2010 Products > SharePoint 2010 Management Shell) and make sure you run as an administrator.

Enter the following:

$passphrase = ConvertTo-SecureString -asPlainText –Force

The request for String: will appear

Type the new passphrase and hit enter

The PowerShell prompt will appear again, enter this:

Set-SPPassPhrase -PassPhrase $passphrase -Confirm

You will be asked to confirm the Passphrase  by re-entering it

Click enter

The system will ask Are you sure you want to perform this action?

Type Y and click enter

And now you’re able to use the Passphrase you just entered to join your new server to the existing farm.  Don’t forget to record your passphrase somewhere safe in case you ever need to hand off the documentation to someone else!

NOTE: During a recent installation, the documentation we had swore up and down that what was recorded as the Passphrase was the official Passphrase.  When using the SharePoint 2010 Configuration Wizard it even accepted the documented Passphrase, however during the join process scripts for some as-yet-unexplained-msCryptic reason we were getting the error message that the Passphrase was incorrect.  Using the above to gently remind our farm of what it’s Passphrase was seemed to fix the issue.  Not sure what the root cause was, but issue was fixed resolved and we moved on.