SQL Server 2008: The server principal is not able to access the database under the current security context

Looks like SQL Server Management Studio guys didn't properly tested the tool with unprivileged users. If, like me, you have a shared SQL Server database that lives among others, probably your DB user will only be able to see and operate with your specific database.

But if you try to expand the Databases node from the management studio, this error (Error 916) will appear:

Screenshot

The solution is as easy as strange and hard to come by yourself (I found it at Microsoft Connect):

  1. Press F7 to display the Object Explorer Details window
  2. Doubleclick on the Databases folder
  3. Right-click in the Collation header and uncheck it.
  4. Refresh

And now it will work and list perfectly all the server databases.

Remember, if you have a site or application that has roles, always test with the least privileged account everything ;)

Comments?

Posted by Kartones on 2010-03-09