Opstarten SQL Server onder ‘Local Service’ account; niet doen!

Bij de installatie van SQL Server wordt de SQL Service onder een zogenaamd local service account gestart. Heel af en toe valt het mij op dat het service account waaronder onderdelen van SQL Server worden gestart, niet naar een domein account wordt gewijzigd. Het is verstandig om de onderdelen van SQL Server onder aparte (!) domein accounts te laten starten; dus een apart domein account voor de database engine, een apart domein account voor de analysis server, één voor de SQL Agent, etc.

Waarom zo moeilijk als het ook makkelijk kan?
Het gebruik van een domein account zorgt ervoor dat op de onderdelen van SQL Server eenvoudiger wijzigingen kunnen worden gemaakt. Afgelopen week kwam ik tegen dat SSAS kubussolutions niet naar een analysis server konden worden uitgerold, omdat er geen gebruik van een domein account werd gemaakt. Bij gebruik van het ‘local service account’ weet het systeem niet of er voldoende rechten zijn bij o.a. het uitrollen van de kubussolutions vanaf een andere machine.

Ok… maar aparte domein accounts voor elk onderdeel van SQL Server?
Hoeft niet, maar het maakt de rechtenstructuur wél duidelijker. Een voorbeeld: om kubussen bij te werken onder het service account waaronder de analysis server wordt gestart, dient dat service account wél leesrechten te hebben op de brondatabase van de database engine; óók wanneer de database engine onder hetzelfde domein account wordt gestart. Het is dan overzichtelijker en duidelijker om de analysis server met een eigen service account te starten.

Kan het nóg scherper / beter?
Ja, door gebruik te maken van “(group) managed service accounts”. Het is wat meer werk, maar heeft als voordeel dat deze accounts uitsluitend kunnen worden gebruikt door de machines die hier rechten voor hebben gekregen. Daarnaast heeft dit account geen wachtwoord, waardoor het account ook niet voor andere doeleinden kan worden gebruikt / misbruikt. Met dank aan mijn collega voor deze mooie aanvulling.

Dus gebruik domein (group) managed service accounts bij het starten van onderdelen van SQL Server in een netwerk met Active Directory als basis.