ドメインサービスアカウントでアプリケーションを実行することに関するベストプラクティスの記事をたくさん見てきました。私は自分のラボで、特定のドメインユーザーがサービスとしてログオンできるようにGPOを設定して試してみました。
ただし、新しいプログラム (監視ツール エージェントなど) をインストールしても、ローカル システムで実行できます。また、再起動後もアプリケーション サービスはローカル システムとして実行されています。
私が知っているように、ローカル システムは非常に高い権限を持っているため、必要がない限り使用を避けるべきだと誰もが言っています。これは、インストール時に、サービスとしてのサービス ログオンをサービス アカウントに手動で変更する必要があることを意味しますか?
GPO またはレジストリを設定することで、ローカル システムでサービスが実行されないようにできますか?
それとも、SQL サービス、Web サービス、アプリケーション サービスなどの一部のアプリケーションでのみサービス アカウントを使用する必要がありますか?
私の質問が明確でなかったら申し訳ありません。提案やアドバイスがあればありがたいです
答え1
LocalSystem として実行する必要があるシステム サービスは多数あります。実際にすべてのサービスがそのように実行されないようにグローバルに防止すると、システムが完全に崩壊することになります。
防止したいのだと思いますアプリケーションサービスとして実行されるものを LocalSystem として実行しないようにします。これを強制する方法はありません。
各サービスで使用されるユーザーアカウントは、その構成に固有のものであり、通常はインストーラプログラムによってサービスのインストール時に構成されます。できる管理者が後で変更することもできますが、選択したユーザーアカウントに必要な権限(フォルダアクセス、レジストリアクセス、システム権限など)がすべて付与されていることを確認する必要があります。また、Windowsサービスのログオンプロパティを変更するだけでは十分ではありません。応用新しいサービス アカウントを使用します (例として SQL Server を参照)。
サービスをインストールするほとんどのインストーラー プログラムは、使用するサービス アカウントを要求します。要求されずに LocalSystem のみを使用する場合は、実際にサービス アカウントが必要である可能性があります (または開発者が怠慢だった可能性があります)。これを変更できるかどうか、また変更方法については、開発者/ベンダーに確認する必要があります。
TL;DR: いいえ、「すべてのサービスはドメイン アカウントを使用して実行する必要がある」というグローバル標準を強制する方法はありません。これは、アプリケーションごとに個別に管理する必要があります。