そのため、最近ジョブを移動しました。新しいSQL Serverインストール用のビルドスクリプトで見つけたコードの一部を以下に示します。
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
これらのアカウントは、デフォルトでSQL Serverのインストールプロセス中に作成されます。
上記のログインを削除することをお勧めしますか?これにより引き起こされる可能性のある副作用はありますか?これらのログインは何に使用されますか?
私は読んだ NT SERVICE\SQLWriterとNT SERVICE\Winmgmtログインを削除できますか? しかし、それは十分具体的ではありません-それらが何を必要としているのかはわかりますが、他にはほとんどありません。 sysadminアクセスが必要ですか?等.
例として( Windowsサービスアカウントとアクセス許可の構成 から取得):
ローカルシステムは、非常に高い特権を持つビルトインアカウントです。ローカルシステムに対する広範な権限を持ち、ネットワーク上のコンピュータとして機能します。アカウントの実際の名前は
NT AUTHORITY\SYSTEM
。
これをどのように読むべきですか?これらの「高い」特権を残すべきですか?
反対票を投じる前に、これらのアカウントが次のようにスクリプト化される正当な理由について参照できる正式なドキュメントを示します( STIG Rule SV-53421r2_rule 。これらのコントロールはSQL Serverのバージョンに固有ですが、最近のバージョンには他にも多くのコントロールがあります。これらの管理下にあり、 パブリックロールに付与されているデフォルトの許可を取り消すなど、より厳格な管理を順守している組織で働いている場合 物事はすぐに複雑になります。
これらの制御下にある環境での経験があるので、NT SERVICE\SQLWriter
とNT SERVICE\Winmgmt
の両方のアカウントを完全に無効化/削除できますが、SQL Serverサービスが十分にロックダウンされたドメインサービスアカウントなど、十分なOSレベルのアクセス許可を持つ適切なサービスアカウントで実行している、またはそれ以上 スタンドアロンまたはグループの管理されたサービスアカウント 。繰り返しになりますが、十分なテストを実行しないとカードハウスの領域に進入するため、OSの権限は慎重に扱う必要があります。
NT AUTHORITY\SYSTEM
アカウントに関しては、これは、可用性グループを実行する場合に削除するアカウントではありません。実際、 STIG SV-93835r1_rule は、デフォルトでCONNECT SQL
権限のみが付与された状態で保持する必要があると述べています。可用性グループがある場合、このアカウントには次の追加のアクセス許可も必要です。
これらの制限は王室の苦痛になる可能性がありますが、それらの使用と権限セットを制限する必要がある正当な理由があります。これらのガイドラインに当てはまらない場合は、自分で賛成し、それらのステップをコメントアウトしてください。
お役に立てば幸いです。