Removing an Admin Console User with DBO Permissions

In TFS 2012, you may notice you're unable to remove an Admin Console User who is the SQL database owner (dbo).  This is usually the user who initially installed and configured TFS.  In this scenario, you will select an Admin Console User in the Admin Console and click the link to "Remove" them, but the user will not actually be removed despite seeing a "Success" message for the removal.  Even after restarting the Admin Console, you will see that the user you tried to remove is still an Admin Console User.

This behavior occurs because:

1) Your SQL Server always needs there to be someone with dbo permissions for each database in order to run

2) TFS requires that an Admin Console User has these permissions so that an admin in the deployment has rights to alter all TFS-related data  

If you would like to remove an Admin Console User who is dbo, you must first reassign the dbo role to a different Admin Console User.  Since the dbo role gives users such elevated permissions in SQL, TFS will not automatically choose a new dbo for you. 

 

To reassign the dbo role, open SQL Management Studio and change the db owner in the "Files" page of the database properties dialog.  Remember, the person you move dbo permissions to must also be an Admin Console User.

After you have done this, go back to the TFS Administration Console and try the removal again.  This time, it should succeed.