ARM ベースのCPU でWindows 11 にMicrosoft Defender for Endpoint のオンボード用ローカルスクリプトがエラーになる
今回はARM ベースのWindows 11 でMicrosoft Defender for Endpoint をオンボードする時、ローカルスクリプトでエラーが発生し正常に登録できなかった事象について説明します。
PC 環境
メーカー | Lenovo Yoga Slim 7x Gen 9 |
---|---|
OS | Windows 11 Pro |
CPU | Snapdragon(R) X Elite |
Microsoft Defender for Endpoint のインストール方法
今回はエラーに関する記事のため、Microsoft Defender for Endpoint のWindows デバイスのオンボード方法を知りたい場合は以下URL を参照してください。
ローカル スクリプトを使用した Windows デバイスのオンボード
発生した事象・原因
デバイスをオンボードするためにローカルスクリプトを実行したところ、以下エラーでオンボードができない事象を確認しました。
[Error Id: 15, Error Level: 1] Unable to start Microsoft Defender for Endpoint Service. Error message: 無効なサービス名 です。
スクリプトの中身を確認しコマンドを1つずつ実行したところ、以下の行のコマンドで「SENSE」サービスがインストールされていないとを確認しました。
<省略>
%windir%\System32\sc.exe query "SENSE" | %windir%\System32\find.exe /i "RUNNING" >NUL 2>&1
<省略>
SENSE はMicrosoft Defender for Endpoint の名称になる全身のWindows Defender Advanced Threat Protection のサービス名です。Microsoft Defender for Endpoint へデバイスをオンボードする場合、このサービスを起動させる必要があります。指定したサービスがインストールされていないため、サービスを起動できずタイムアウトとなりエラーが発生していました。
解決した方法
デバイスは異なりますが、Surface Laptop 7 で同様の事象を確認しました。
Windows Defender ATP (SENSE service) on Arm Surface Laptop 7
QA サイトによると、DISM コマンドでSense.Client をインストールすることで解消すると記載されています。コマンドプロンプトから管理者権限で以下コマンドを実行後、ローカルスクリプトを実行したところMicrosoft Defender for Endpoint へのオンボードができました。
rem Senseクライアントの機能パッケージをインストールする
DISM /online /Add-Capability /CapabilityName:Microsoft.Windows.Sense.Client~~~~
DISM の機能パッケージについては以下ドキュメントを参照してください。
DISM 機能パッケージの保守のコマンド ライン オプション
ちなみに、Intel CPU のWindows 11 (Windows 10 からアップグレードしたデバイス) で確認したところ、SENSE はインストール済でした。ARM ベースのCPU ではデフォルトでSense.Client がインストールされていないと考えられます。
C:\Windows\System32>sc.exe query "SENSE"
SERVICE_NAME: SENSE
TYPE : 10 WIN32_OWN_PROCESS
STATE : 1 STOPPED
WIN32_EXIT_CODE : 1077 (0x435)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
まとめ
- ARM ベースのWindows 11 では「Microsoft.Windows.Sense.Client~~~~」がデフォルトでインストールされていない
- ローカルスクリプトを実行する前にDISM コマンドでSense.Client をインストールする必要がある