Windows のユーザーごとのサービス

ユーザーが Windows にサインインすると、OS によって ユーザーごとのサービスが作成されます。 ユーザーがサインアウトすると、これらのサービスは停止および削除されます。 組み込みのセキュリティ プリンシパルではなく、ユーザー アカウントのセキュリティ コンテキストで実行されます。 この動作により、構成済みのアカウントまたはタスクとして関連付けられているこれらのサービスを実行する以前の方法よりも優れたリソース管理が提供されます。

ユーザーごとのサービスは、デスクトップ エクスペリエンスをインストールする場合にのみ Windows Server で使用できます。 詳細については、「 Server Core と Server with Desktop Experience のインストール オプション」を参照してください。

Windows では、レジストリで定義されているテンプレートに基づいて、ユーザーごとのサービスが作成されます。 これらのサービスの動作を管理または制御する必要がある場合は、テンプレートを調整できます。 たとえば、テンプレート サービスのスタートアップの種類を [無効] に設定できます。 この例では、Windows はユーザーごとのサービスを停止状態と無効状態で作成します。

重要

運用環境に広範にデプロイする前に、テンプレート サービスの構成に対する変更を慎重にテストします。

この記事の情報を使用して、ユーザーごとのサービスを理解し、ユーザー サービス テンプレートを構成し、グループ ポリシーとセキュリティ テンプレートを使用してユーザーごとのサービスを管理します。

ユーザーごとのサービスの一覧

次の表に、現在のバージョンの Windows のユーザーごとのサービスの一覧を示します。 Windows 10/11 の他のバージョンでは、同じサービスを使用できない場合があります。

これらのサービスのいずれかを再構成する前に、この情報を確認して影響を理解してください。 たとえば、ユーザーごとのサービスを無効にした場合、依存アプリが正しく動作しない可能性があります。

表示名 サービス名 既定の開始の種類 依存関係 説明
エージェント ライセンス認証ランタイム AarSvc Manual 会話型エージェント アプリケーションをアクティブ化するためのランタイム。
Bluetooth ユーザー サポート サービス BluetoothUserService Manual 各ユーザー セッションに関連する Bluetooth 機能の適切な機能をサポートします。
OneCore キャプチャ サービス CaptureService Manual Windows.Graphics.Capture 名前空間のスクリーン キャプチャ API を呼び出すアプリケーションのオプションの画面キャプチャ機能を有効にします。
クリップボード ユーザー サービス cbdhsvc 自動 (遅延開始) Windows では、クリップボードのシナリオでこのユーザー サービスが使用されます。 たとえば、クリップボードの履歴やデバイス間の同期などです。 詳細については、「 Windows のクリップボード」を参照してください。
クラウド バックアップと復元サービス CloudBackupRestoreSvc Manual アプリケーションと設定の状態の変更についてシステムを監視します。 必要に応じて、このサービスはクラウドのバックアップと復元の操作を行います。
接続デバイス プラットフォーム ユーザー サービス CDPUserSvc 自動 - ネットワーク接続ブローカー
- リモート プロシージャ コール (RPC)
- TCP/IP プロトコル ドライバー
このサービスを使用すると、ユーザーは接続されたデバイスの接続、管理、制御を行うことができます。 これらの接続デバイスには、モバイル、Xbox、HoloLens、またはスマート/IoT デバイスが含まれます。 1 つの具体的な例については、「 Windows で近くのデバイスと物を共有する」を参照してください。
同意 UX ユーザー サービス ConsentUxUserSvc Manual システムがユーザーの同意を要求して、アプリがデバイスの場所などの機密性の高いリソースや情報にアクセスできるようにします。
連絡先データ PimIndexMaintenanceSvc Manual UnistoreSvc すばやく連絡先を検索するために、連絡先データのインデックスを作成します。 このサービスを停止または無効にすると、検索結果に連絡先が見つからない可能性があります。
Credential Enrollment Manager CredentialEnrollmentManagerUserSvc Manual このサービスでは、セキュリティで保護されたストレージとユーザー資格情報の取得がサポートされています。 たとえば、Web サイト、リモート デスクトップ接続、その他のアプリのトークンなどです。
デバイス アソシエーション ブローカー DeviceAssociationBrokerSvc Manual - DevicePicker
- シェル ペアリング UX
新しいデバイス シナリオのアプリ内ペアリングとアクセス チェックをサポートします。
デバイス ピッカー DevicePickerUserSvc Manual Windows では、このユーザー サービスを使用して、Miracast、Digital Living Network Alliance (DLNA)、Discovery and Launch (DIAL) エクスペリエンスを管理します。
デバイス フロー DevicesFlowUserSvc Manual ユーザー インターフェイスと設定アプリを接続し、WiFi ディスプレイと Bluetooth デバイスとペアリングできるようにします。
ゲーム録画とブロードキャスト ユーザー サービス BcastDVRUserService Manual Windows では、このユーザー サービスをゲーム録画とライブ ブロードキャストに使用します。
メッセージング サービス MessagingService Manual このサービスでは、テキスト メッセージングと関連する機能がサポートされています。
今すぐセッション マネージャーを再生中 NPSMSvc Manual 現在再生中のセッション マネージャー (NPSM) サービスは、デバイスで実行されているメディア セッションを管理します。
プラン 9 リダイレクター サービス P9RdrService Manual Linux 用 Windows サブシステムでサポートされているトリガー開始プラン 9 ファイル サーバーを有効にします。 詳細については、「 Bell Labs からのプラン 9」を参照してください。
Pen Service PenService Manual ペン入力デバイスのテール ボタンを押すと、このサービスはそれらのアクションに応答します。 アプリケーションを起動したり、[設定] でカスタマイズした別のアクションを実行したりできます。 詳細については、「 Surface ペンを使用する方法 」または「 ペン デバイスのハードウェア開発者向けドキュメント」のユーザー ドキュメントを参照してください。
印刷ワークフロー PrintWorkflowUserSvc Manual 印刷ワークフロー アプリケーションのサポートを提供します。 このサービスをオフにすると、一部の印刷機能が正常に動作しない可能性があります。
同期ホスト OneSyncSvc 自動 (遅延開始) このサービスは、メール、連絡先、予定表、およびその他のユーザー データを同期します。 このサービスが停止すると、この機能に依存するメールやその他のアプリケーションは正常に動作しません。
UDK ユーザー サービス UdkUserSvc Manual Windows では、このサービスを使用してシェル エクスペリエンス間の調整を行います。
ユーザー データ アクセス UserDataSvc Manual UnistoreSvc 連絡先情報、予定表、メッセージ、その他のコンテンツなど、構造化されたユーザー データへのアクセスをアプリに提供します。 このサービスを停止または無効にすると、このデータを使用するアプリが正しく動作しない可能性があります。
ユーザー データ ストレージ UnistoreSvc Manual 連絡先情報、予定表、メッセージ、その他のコンテンツなど、構造化されたユーザー データの保存を処理します。 このサービスを停止または無効にすると、このデータを使用するアプリが正しく動作しない可能性があります。
Web Threat Defense ユーザー サービス webthreatdefusersvc 自動 このサービスは、承認されていないエンティティが資格情報にアクセスしようとしたときにユーザーに警告することで、コンピューターを保護するのに役立ちます。
Windows プッシュ通知ユーザー サービス WpnUserService 自動 このサービスは 、ローカルおよびプッシュ通知 のサポートを提供する Windows プッシュ通知サービス (WNS) プラットフォームをホストします。 サポートされている通知は、タイル、トースト、生です。

ユーザーごとのサービスを表示する

Windows レジストリの外部でユーザー サービス テンプレートを表示することはできませんが、ユーザー固有のユーザーごとのサービスを確認できます。 Windows では、次の形式でこれらのサービスが表示されます。 <service name>_LUID ここで <service name> 、 はユーザー サービスの表示名であり、 LUID ユーザー コンテキストのローカルで一意の識別子です。

たとえば、次のユーザーごとのサービス名が表示される場合があります。

  • Contact Data_443f50
  • Sync Host_443f50
  • User Data Access_443f50
  • User Data Storage_443f50

すべてのユーザーごとのサービスの表示名とサービス名には、同じ LUID サフィックスが含まれています。

Windows サービス コンソールでユーザーごとのサービスを表示する

Windows にサインインするときは、 を実行 services.msc してサービス コンソールを開きます。 ローカル コンピューターを表示すると、ユーザー アカウントのこれらのサービスが表示されます。

Windows PowerShellを使用してユーザーごとのサービスを表示する

次の PowerShell スクリプトは、ユーザーごとのサービスを照会する方法の例です。 ビット値を含むサービス型の値を 64 照会します。

# Define the bit value for per-user services in the ServiceType property of a service object
$flag = 64

# Define an empty array to store the resulting services that match the criteria
$serviceList = @()

# Get all services on the computer and store them in the variable
$services = Get-Service

# Loop through each service in the array of services.
foreach ( $service in $services ) {
  # For each specific service, check if the service type property includes the 64 bit using the bitwise AND operator (-band).
  # If the result equals the flag value, then the service is a per-user service.
  if ( ( $service.ServiceType -band $flag ) -eq $flag ) { 
    # When a per-user service is found, then add that service object to the results array.
    $serviceList += $service
  }
}

# Display the results array, sorted by display name, in a table format with the specified properties.
$serviceList | Sort-Object DisplayName | Format-Table DisplayName, Name, StartType, ServiceType

コマンド ラインからユーザーごとのサービスを表示する

を実行 cmd.exe して Windows コマンド プロンプトを開きます。 コマンドを sc qc 使用して、これらのサービスに対してクエリを実行します。 Type 値は、サービスがユーザー サービス テンプレートかユーザー サービス インスタンスかを示します。

次の例では、 ゲーム DVR およびブロードキャスト ユーザー サービス (BcastDVRUserService) サービスのテンプレートとユーザー固有のインスタンスに対するクエリの例を示します。

sc qc BcastDVRUserService
sc qc BcastDVRUserService_18f113

2 つのサービスで qc sc.exe 実行され、出力内の型の値が強調表示されている Windows コマンド ライン セッションのスクリーンショット。

ユーザーごとのサービスを無効にする方法

ユーザー サービスのテンプレートは、 サービス コンソール (services.msc) には表示されません。 ユーザーごとのサービスを無効にするには、グループ ポリシーまたはスクリプト化されたソリューションを使用してレジストリを直接編集する必要があります。 テンプレートは、 のレジストリにあります HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services

ユーザーごとのサービスを無効にすると、ユーザーがサインインしても Windows によって作成されますが、停止状態と無効状態になります。 ユーザーがサインアウトすると、Windows はユーザーごとのサービスを削除します。

通常のグループ ポリシー管理方法を使用して、ユーザーごとのサービス テンプレートをすべて管理することはできません。 ユーザーごとのサービスはサービス 管理コンソールに表示されないため、グループ ポリシー サービス ポリシー エディターにも表示されません。

さらに、セキュリティ テンプレートでは管理できないユーザー サービスが 4 つあります。

  • PimIndexMaintenanceSvc
  • UnistoreSvc
  • UserDataSvc
  • WpnUserService

これらの制限により、次の方法を使用して、ユーザーごとのサービス テンプレートを管理できます。

  • セキュリティ テンプレートとスクリプト、またはグループ ポリシー設定レジストリ ポリシーの組み合わせ。
  • すべてのサービスのグループ ポリシーの基本設定。
  • すべてのサービスのスクリプト。

セキュリティ テンプレートを使用してテンプレート サービスを管理する

CDPUserSvc サービスと OneSyncSvc ユーザーごとのサービスは 、セキュリティ テンプレートを使用して管理できます。

次に、例を示します。

[Unicode]
Unicode=yes
[Version]
signature="$CHICAGO$"
Revision=1
[Service General Setting]
"CDPUserSVC".4,""

スクリプトを使用してユーザーごとのサービスを管理する

スクリプトを作成して、ユーザーごとのサービスのスタートアップの種類を変更できます。 次に、グループ ポリシーまたはMicrosoft Configuration Managerなどの別の管理ソリューションを使用して、対象のデバイスにスクリプトを展開します。

例 1: PowerShell コマンドレットを使用するSet-Service

次のサンプル スクリプトでは 、Set-Service PowerShell コマンドレットを使用して、PimIndexMaintenanceSvc サービスの開始の種類を無効に構成します。

Set-Service -Name PimIndexMaintenanceSvc -StartupType Disabled

例 2: コマンド ラインを使用するsc.exe config

次のサンプル スクリプトでは、 を使用 sc.exe config して、PimIndexMaintenanceSvc サービスの開始の種類を無効に構成します。

sc.exe configure PimIndexMaintenanceSvc start= disabled

= のスペースは意図的です。

グループ ポリシーの基本設定を使用してテンプレート サービスを管理する

セキュリティ テンプレートを使用してユーザーごとのサービスを無効にできない場合は、グループ ポリシーの基本設定を使用します。

  1. グループ ポリシー管理コンソール (gpmc.msc) を開きます。

  2. 新しいグループ ポリシー オブジェクト (GPO) を作成するか、既存の GPO を使用します。

  3. GPO を編集して、グループ ポリシー オブジェクト エディターを起動します。

  4. グループ ポリシーをターゲットにする方法に応じて、[ コンピューターの構成 ] または [ ユーザー構成 ] で [基本設定]、[ Windows 設定] の順に参照し、[ レジストリ] を選択します。

  5. [アクション] メニューに移動し、[新規] を選択し、[レジストリ項目] を選択します。

    グループ ポリシー管理エディターレジストリ設定のコンテキスト メニューを強調表示して新しいレジストリ項目を作成するスクリーンショット。

  6. Hive で を選択しますHKEY_LOCAL_MACHINE

    [新しいレジストリ] プロパティ ウィンドウ [Hive] の値が [HKEY_LOCAL_MACHINE] に設定されていることを示すスクリーンショット。

  7. [キー パス] の横にある省略記号 (...) を選択します。 を System\CurrentControlSet\Services 参照して、ユーザー サービス テンプレートを選択します。 例: PimIndexMaintenanceSvc。 値の一覧で [ 開始 ] を強調表示し、[選択] を 選択します

    PimIndexMaintenanceSvc レジストリ項目が選択され、[開始] 値が選択されている [レジストリ項目ブラウザー] ウィンドウのスクリーンショット。

  8. [ スタート プロパティ ] ウィンドウで、[ 値データの変更] から 0000000300000004 [ OK] を選択します。 [値データ] を [4 = 無効] に設定します。

    [開始] プロパティ ウィンドウのスクリーンショット。値が00000004された [値] データ フィールドが強調表示されています。

    サービスの開始値 4無効です

  9. グループ ポリシー テンプレートで管理できない他のサービスを追加するには、ポリシーを編集し、前の手順を繰り返します。

Windows レジストリを使用したユーザー サービス テンプレートの管理

グループ ポリシーの基本設定を使用してユーザーごとのサービスを管理できない場合は、Windows レジストリを編集できます。 ユーザー サービス テンプレートを無効にするには、各サービスのスタートアップの種類を に 4変更します。これは 無効です

注意

他の方法がない限り、レジストリを直接編集しないでください。 レジストリ エディターまたは Windows では、レジストリに対するこれらの手動変更は検証されません。 正しくない値を格納すると、システムで回復不可能なエラーが発生する可能性があります。 可能であれば、レジストリを直接編集するのではなく、グループ ポリシーやその他のサポートされている Windows ツールを使用してこれらのタスクを実行します。 レジストリを編集する必要がある場合は、細心の注意を払ってください。

例 1: コマンド ライン コマンドを reg.exe 使用してレジストリを編集する

  1. 管理者として を実行 cmd.exe して、Windows コマンド プロンプトを開きます。

  2. 次の例には、Windows レジストリ4[開始] の値を に変更して、指定した Windows サービスを無効にする複数のコマンドが含まれています。

REG.EXE ADD HKLM\System\CurrentControlSet\Services\CDPUserSvc /v Start /t REG_DWORD /d 4 /f
REG.EXE ADD HKLM\System\CurrentControlSet\Services\OneSyncSvc /v Start /t REG_DWORD /d 4 /f
REG.EXE ADD HKLM\System\CurrentControlSet\Services\PimIndexMaintenanceSvc /v Start /t REG_DWORD /d 4 /f
REG.EXE ADD HKLM\System\CurrentControlSet\Services\UnistoreSvc /v Start /t REG_DWORD /d 4 /f
REG.EXE ADD HKLM\System\CurrentControlSet\Services\UserDataSvc /v Start /t REG_DWORD /d 4 /f
REG.EXE ADD HKLM\System\CurrentControlSet\Services\WpnUserService /v Start /t REG_DWORD /d 4 /f

例 2: レジストリ エディター ユーザー インターフェイスを使用してレジストリを編集する

  1. 管理者として、 を実行regedit.exeしてレジストリ エディターを開きます。

  2. HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services 参照して、ユーザー サービス テンプレートを選択します。 例: CDPSvc

  3. 値の一覧で、[ 開始 ] の値を開きます。

  4. [値] データを に変更します4

[レジストリ] エディター HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\CDPSvc 開き、[開始] の値が 4 に設定されていることを示すスクリーンショット。

例 3: ユーザーごとのサービスの作成を禁止する

ユーザーがサインオンしたときに、Windows がユーザーごとのサービスを作成できないようにすることができます。 レジストリの同じサービス テンプレート ノードで、 を に0設定UserServiceFlagsします。

UserServiceFlag を 0 に設定して強調表示 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\PimIndexMaintenanceSvc 開くレジストリ エディターのスクリーンショット。

次のステップ

Windows Server のシステム サービスを無効にする方法の詳細については、「 デスクトップ エクスペリエンスを使用した Windows Server でのシステム サービスの無効化に関するガイダンス」を参照してください。