Daher habe ich kürzlich Jobs verschoben. Ein Teil des Codes, den ich in unseren Build-Skripten für neue SQL Server-Installationen entdeckt habe, ist unten aufgeführt.
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
Diese Konten werden standardmäßig während des SQL Server-Installationsprozesses erstellt.
Werden die oben genannten Anmeldungen empfohlen? Gibt es irgendwelche Nebenwirkungen, die dies verursachen könnte? Wofür werden diese Anmeldungen verwendet?
Ich lese Kann ich die Anmeldungen NT SERVICE \ SQLWriter und NT SERVICE \ Winmgmt löschen? aber es ist einfach nicht konkret genug - ich kann sehen, wofür sie gebraucht werden, aber sonst sehr wenig. Benötigen sie einen Systemadministratorzugriff? usw.
Als Beispiel (entnommen aus Konfigurieren von Windows-Dienstkonten und -Berechtigungen ):
Das lokale System ist ein sehr privilegiertes integriertes Konto. Es verfügt über umfangreiche Berechtigungen für das lokale System und fungiert als Computer im Netzwerk. Der tatsächliche Name des Kontos lautet
NT AUTHORITY\SYSTEM
.
Wie soll ich das lesen? Sollte es mit diesen "hohen" Privilegien belassen werden?
quelle
Antworten:
Bevor Sie abstimmen, finden Sie hier eine formelle Dokumentation, auf die Sie aus einem legitimen Grund verweisen können, warum diese Konten wie folgt als Skript erstellt werden: STIG-Regel SV-53421r2_rule . Diese Steuerelemente sind versionsspezifisch für SQL Server, es gibt jedoch auch eine Reihe anderer Steuerelemente in den neueren Versionen. Wenn Sie für eine Organisation arbeiten, die unter diese Kontrolle fällt und auch einige der strengeren einhält, z. B. das Widerrufen von Standardzuschüssen für die öffentliche Rolle, können die Dinge ziemlich schnell kompliziert werden.
Als ich einige Erfahrung in einer Umgebung, die unter diesen Kontrollen fällt, kann ich sagen , dass Sie deaktivieren / fallen sowohl die
NT SERVICE\SQLWriter
undNT SERVICE\Winmgmt
Outright - Konten, aber Sie müssen sicher , dass der SQL Server - Dienst machen , wird im Rahmen eines entsprechenden Dienstkonto mit ausreichend OS - Ebene läuft Berechtigungen, z. B. ein ausreichend gesperrtes Domänendienstkonto oder noch besser eigenständige oder gruppenverwaltete Dienstkonten . Auch hier müssen Betriebssystemberechtigungen mit Sorgfalt behandelt werden, da dies das Kartenhausgebiet betritt, wenn Sie nicht genügend Tests durchführen.Das
NT AUTHORITY\SYSTEM
Konto ist KEIN Konto, das Sie löschen möchten, wenn Sie Verfügbarkeitsgruppen ausführen möchten. Tatsächlich erwähnt STIG SV-93835r1_rule , dass Sie es nurCONNECT SQL
mit standardmäßig gewährten Berechtigungen behalten sollten . Für den Fall, dass Sie über eine Verfügbarkeitsgruppe verfügen, muss dieses Konto über die folgenden zusätzlichen Berechtigungen verfügen:Diese Einschränkungen können ein königlicher Schmerz sein, aber es gibt legitime Gründe, warum Sie ihre Verwendung und Berechtigungssätze einschränken müssten. Wenn Sie nicht unter diese Richtlinien fallen, tun Sie sich selbst den Gefallen und kommentieren Sie diese Schritte aus.
Ich hoffe, das hilft!
quelle