Di recente ho spostato i lavori: un pezzo di codice che ho individuato nei nostri script di build per le nuove installazioni di SQL Server è riportato di seguito.
IF EXISTS ( SELECT *
FROM [sys].[syslogins]
WHERE [name] = N'NT AUTHORITY\SYSTEM' )
BEGIN
DROP LOGIN [NT AUTHORITY\SYSTEM];
END
IF EXISTS ( SELECT *
FROM [sys].[syslogins]
WHERE [name] = N'NT SERVICE\SQLWriter' )
BEGIN
DROP LOGIN [NT SERVICE\SQLWriter];
END
IF EXISTS ( SELECT *
FROM [sys].[syslogins]
WHERE [name] = N'NT SERVICE\Winmgmt' )
BEGIN
DROP LOGIN [NT SERVICE\Winmgmt];
END
GO
Questi account vengono creati durante il processo di installazione di SQL Server per impostazione predefinita.
Si consiglia di eliminare gli accessi precedenti? Ci sono effetti collaterali che potrebbero causare? A cosa servono questi accessi?
Ho letto Posso cancellare gli accessi NT SERVICE \ SQLWriter e NT SERVICE \ Winmgmt? ma non è abbastanza concreto - posso vedere a cosa servono ma pochissimo altro. Hanno bisogno dell'accesso al sysadmin? eccetera.
Ad esempio (tratto da Configura account e autorizzazioni del servizio Windows ):
Il sistema locale è un account incorporato con privilegi molto elevati. Ha ampi privilegi sul sistema locale e funge da computer sulla rete. Il nome effettivo dell'account è
NT AUTHORITY\SYSTEM
.
Come dovrei leggere questo? Dovrebbe essere lasciato con questi "alti" privilegi?