Grant access only to System databases Is it possible give an SA like permission minus any access to user databases?  I want people to be able to collect information about Sql Server from the system databases but I want to make sure the User databases cannot be touched.  What is the best way to approach that?
There are a couple of approaches you can take.  The better one is to grant VIEW SERVER STATE.  This gives you access to the DMOs that give you information about the server.

The other version (which I don't recommend) is to grant CONTROL SERVER.  This permission is very similar to SYSADMIN but you can do DENYs.  So you could DENY CONNECT on each of the user databases.  The down side here is that you are giving someone (for example) the ability to stop &amp; start the SQL Services.

Unless you have a VERY good reason to go beyond VIEW SERVER STATE just go with that one.

You can also look at the list of server level roles and see what matches your needs.  Just remember that someone with securityadmin for example could create a login with sufficient permissions to affect the databases.