Today I received the following error while getting ready to do some new development for my URL Rewriter.
TF53002: Unable to obtain registration data for application VersionControl.
TF30040: The database is not correctly configured. Contact your Team Foundation Server administrator.
TF30059: Fatal error while initializing web service
TF30063: You are not authorized to access myserver.443. (type TeamFoundationServerUnauthorizedException)
This is very weird because I was just working on it earlier this week, without any issues. So I go in to check the recent update history of Windows Update and to my surprise I see 13 new updates, mostly security related. And since TF30063 is a security related exception, I think I found the culprit. Here are the KB articles of the updates that were done for reference:
So I started searching the web for each of those error messages, and I found a ton of old articles related to the SP1 release of Team Foundation Server. However I upgraded about a year ago to SP1 so I doubt that is the issue. But during my searching I found an obscure article referencing KB926642, which on first pass I just brushed off as not being the issue. But as I started reading it I remembered that I do access my server through a CNAME address, and one of these security updates might have disabled Windows Authentication through CNAME’s. So I tried as the article suggested.
\\myserver\c$ — works
\\myserver-cname\c$ — tells me I am not authorized
So I followed Method 1 in KB926642:
Method 1 (recommended): Create the Local Security Authority host names that can be referenced in an NTLM authentication request
To do this, follow these steps for all the nodes on the client computer:
- Click Start, click Run, type regedit, and then click OK.
- Locate and then click the following registry subkey:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0
- Right-click MSV1_0, point to New, and then click Multi-String Value.
- In the Name column, type BackConnectionHostNames, and then press ENTER.
- Right-click BackConnectionHostNames, and then click Modify.
- In the Value data box, type the CNAME or the DNS alias, that is used for the local shares on the computer, and then click OK.Note Type each host name on a separate line.
Note If the BackConnectionHostNames registry entry exists as a REG_DWORD type, you have to delete the BackConnectionHostNames registry entry.
- Exit Registry Editor, and then restart the computer.
And everything is working great now. So if you are using a CNAME with your TF server, you may want to consider adding the CNAME in to the BackConnectionHostNames. It will not only help your TF server, but all your other connections to this server that use Windows Authentication and the CNAME. Hope this helps somebody else besides me.