サービス ログオン アカウントについて

Win32 ベースのサービスが開始されると、ローカル コンピューターにログオンします。 次のようにログオンできます。

  • ローカルまたはドメインのユーザー アカウント。
  • ローカル システム アカウント。

ログオン アカウントは、実行時にサービスのセキュリティ ID、つまりサービスの主要なセキュリティ コンテキストを決定します。 セキュリティ コンテキストによって、サービスがローカルおよびネットワーク リソースにアクセスできるかどうかが決まります。 たとえば、ローカル ユーザー アカウントのセキュリティ コンテキストで実行されているサービスは、ネットワーク リソースにアクセスできません。 逆に、Windows 2000 ドメイン コントローラ (DC) 上のローカル システム アカウントのセキュリティ コンテキストで実行されているサービスは、DC に無制限にアクセスできます。 詳細と、ユーザー アカウントとローカル システムの利点と制限事項については、セキュリティ コンテキストと アクティブディレクトリ ドメイン サービスを参照してください。

最終的に、サービスがインストールされているシステムの管理者は、サービスのログオン アカウントを制御できます。 セキュリティ上の理由から、一部の管理者は、ローカル システム アカウントでサービスをインストールすることを許可しない場合があります。 サービスは、ドメイン ユーザー アカウントで実行できる必要があります。 プログラマは、サービスのログオン アカウントをある程度制御できます。 サービス インストーラーは、サービスの作成 関数を呼び出してホスト コンピューターにサービスをインストールするときに、サービスのログオン アカウントを指定します。 インストーラーは既定のログオン アカウントを提案できますが、管理者が実際のアカウントを指定できるようにする必要があります。

インストーラーは、サービスのログオン アカウントに関連する次のタスクを実行することもできます:

  • インストール。 ユーザアカウントで実行するサービスをインストールする場合は、サービスの作成 を呼び出す前にアカウントが存在している必要があります。 既存のアカウントを使用することも、ホスト コンピューター インストーラーの一部として作成することもできます。 詳細は サービスのユーザーアカウントを設定するを参照してください。
  • [認証] 。 クライアントで ケルベロス 相互認証を使用する場合は、サービスのログオン アカウントに SPN を登録します。 サービスがローカル システム アカウントで実行されている場合、サービスのログオン アカウントはホスト コンピューターのコンピューター アカウントです。 詳細については、「Service Principal Names (サービス プリンシパル名)」をご覧ください。
  • アクセス権を付与します。 実行時のサービスに、タスクの実行に必要なアクセス権と特権があることを確認します。 これには、さまざまなリソース ディレクトリ オブジェクト、ファイル共有などのセキュリティ記述子にアクセス制御エントリ (ACEs) を設定して、ユーザーまたはコンピューター アカウントに必要なアクセス権を許可する必要があります。 詳細については、サービス ログオン アカウントへのアクセス権の付与を参照してください
  • 権限を設定します。 指定したログオン アカウントに、ホスト コンピューターにサービスとしてログオンする権限などの特権を割り当てます。 詳細については、ホスト コンピューターでのサービスとしてのログオン権限の付与を参照してください

サービスのインストール後、サービス ログオン アカウントに関連するメンテナンス タスクがあります。 詳細については、ログオン アカウントのメンテナンス タスクを参照してください。

  • パスワードのメンテナンス。 ユーザー アカウントで実行されるサービスの場合は、パスワードを定期的に変更し、1 つ以上のローカル サービス コントロール マネージャーがサービスを開始するために使用するパスワードとパスワードを同期させる必要があります。
  • SPN のメンテナンス。 サービス ログオン アカウントが変更された場合は、古いアカウントに登録されている SPN を削除し、新しいアカウントに登録します。 サービスのインストール時に、ドメイン管理者はサービスを実行するアカウントを変更できることに注意してください。Win32 関数またはコンピュータの管理管理ツールのユーザー インターフェイスを使用します。
  • ACE のメンテナンス。 サービス ログオン アカウントが変更された場合は、ACE とグループ メンバーシップを更新して、サービスが必要なリソースに引き続きアクセスできるようにする必要があります。