Why System Account is a bad idea for SQL Server Service Account

By:   |   Comments   |   Related: 1 | 2 | 3 | 4 | > Security


I'm trying to set up SQL Server and I know that I'm not supposed to use an account that's an administrator on the system, as per best practices. I see that the System account is a possibility, but I've been advised not to use it. Why not? Check out this tip to learn more.


First and foremost, the security recommendation is to use the least privileged account possible. The local System account is an administrator on the system, so if you're ruling out administrators, then on the basis of that alone, System should be out. Ruling out administrators is a good thing, because the members of the administrators group has far more rights than SQL Server typically needs. For instance, this snapshot of part of the local security policy shows just how powerful a member of the administrators group is.

why system is bad 01

In actuality, though, the System account is more powerful than a normal member of the Administrators group. One place where you can clearly see this is the registry hive HKEY_LOCAL_MACHINE\Security, which is a protected part of the registry. By default, administrators only have the following rights:

why system is bad 02

That's not very much, but it's more than any other type of user with the exception of System. System has Full Control, so it has all the rights:

why system is bad 03

This is definitely a part of the registry SQL Server shouldn't have access to. Therefore, even a regular member of the Administrators group is a better choice than the System account.

Given the permissions granted to the Administrators group plus the additional permissions granted to the System account, using System is a really bad idea when it comes to selecting a SQL Server service account.

Next Steps

sql server categories

sql server webinars

subscribe to mssqltips

sql server tutorials

sql server white papers

next tip

About the author
MSSQLTips author K. Brian Kelley K. Brian Kelley is a SQL Server author and columnist focusing primarily on SQL Server security.

This author pledges the content of this article is based on professional experience and not AI generated.

View all my tips

Comments For This Article

get free sql tips
agree to terms