Preventing Unauthorized Admin Access

  • I am wondering what other people are doing to keep people with admin access to servers out of the management tools on their SQL servers. People in our server unit that have admin access to any server are logging on to the SQL Server database server, and immediately think that they are SQL Server DBAs. I had one guy last week running a query in SSMS that selected and sorted so much data that the TempDB grew until it filled the drive it was on.

    How do other organizations control this?

  • I've seen this handled 2 ways.

    1) remove the built in admin account rights from SQL. This can be done and if you google or search this site you'll find a variety of ways to accomplish it as well as numerous caveats on things to expect.

    2) It's a management problem and a matter of trust. Audit the heck out of your databases and when unauthorized individuals do things like that they lose their jobs, take a couple of days off without pay or some other such punishment like you being allowed to personally smack them upside the head with the office tool of your choice. I prefer an old CRT we have here, it's heavy enough to really make them think and the cord is strong enough I can whirl it around a few times before connecting.

    -Luke.

    To help us help you read this[/url]For better help with performance problems please read this[/url]

  • Luke's suggestions are pretty straightforward 🙂 I handle this kind of issues in the following way: all login attempts are logged into the server errorlog and I get a filtered extract every morning. When I see someone outstanding logged in to the servers, I write the ma mail stating that I saw them logging in (or trying to log inn) and I wonder if I can help them in anything stored on that server as apparently, he's not a DBA of that instance, so might not be familiar with the structure.

    I write it in a very polite form, but if someone reads between the lines, it rather sounds like 'I got you, what the heck are you doing on my server?'

  • Here we have set up a rule that if anyone else other than a DBA wants to login to the server (Not just DB) they have to notify us why they want to log on. They are absolutely not allowed to log on to the SQL Server instance... 🙂

    -Roy

  • Hi jrasmussen,

    Generally the way to control access to SQL Server be it from Admins or otherwise is through adding and removing accounts from the Security Roles.

    The General Rule of thumb is to:

    - Create an AD Domain Group for DBA's,

    - Add the DBA's to it

    - Add the Group to SQL Server

    - Grant the appropriate Privileges to it (eg. sysadmin SQL Server-level role)

    - and then locate the local admins group and remove the excess roles and privileges from it.

    This assumes that you've correctly set up the service accounts (see: "Setting Up Windows Service Accounts" in SQL Server Books Online) and ensured that your applications are not configured to use admin accounts etc as well.

    Connecting through Windows Authentication is generally the tried and trusted method of authenticating to SQL Server as well. its another thing to look into in case there's an SA account lying about that hasn't been secured and can act as a back door into your SQL Server.

    Hope it helps,

    Charley Hanania.

Viewing 5 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic. Login to reply