> For the complete documentation index, see [llms.txt](https://help.aikido.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.aikido.dev/docs/docs-ja/aikido-device-protection/deploying-aikido-endpoint/device-protection-mdm-guides/windows/deploy-aikido-endpoint-with-primo.md).

# Primo で Device Protection を展開する

必要な権限を設定した上で、Primo を使って管理対象の Windows フリート全体に Aikido Device Protection を展開します。

{% hint style="info" %}
開始する前に、すべてのデバイスを Primo Windows 管理に登録しておく必要があります。
{% endhint %}

## インストール

{% stepper %}
{% step %}
**必要なもの**

開始前に、Aikido Device Protection ダッシュボードから以下を用意していることを確認してください：

* お使いの **PowerShell インストールコマンド** （ダッシュボードのユーザーグループ選択ツールからコピーします。トークンとインストーラーのダウンロードが含まれます）

見つからない場合は、 [Aikido Device Protection ダッシュボード](https://app.aikido.dev/endpoint-protection/devices)に戻り、】【t\_f3941c4b":"デバイスを接続","t\_5d4f039e":"管理対象デバイスでインストールコマンドを実行する","t\_831d390e":"Workspace ONE UEM コンソールで、次の場所に移動します：","t\_8edbd69c":"リソース","t\_72eed93f":"→","t\_ba9a6e6d":"スクリプト","t\_d113c2a0":"を選択し、","t\_96cd98c8":"Windows","t\_249d2587":"をドロップダウンから選択します。","t\_43b01c7b":"","t\_36c80f14":"一般","t\_f6ef8739":"タブで、スクリプトに名前を付けます（例：\\"Aikido Device Protection Install\\"）。","t\_c35a5a82":"詳細","t\_0acd71e4":"タブで、次を設定します：","t\_be245649":"言語","t\_1ae764eb":"PowerShell","t\_7640c765":"実行コンテキストと権限","t\_4a0c02ed":"システムコンテキスト","t\_ad9531b5":"Aikido ダッシュボードからコピーした PowerShell インストールコマンドを、スクリプト本文に貼り付けます。","t\_b083cb05":"割り当て","t\_2f2f8b67":"タブで、対象の Windows スマートグループにスクリプトを割り当て、トリガーを次回のサンプル時に実行するよう設定します。","t\_49534e5c":"保存","t\_8e660df3":"次にあるスクリプトの行で","t\_cb74a469":"その他","t\_e7c0fc5c":"今すぐ実行","t\_fb7bb055":"をまずテストデバイスで実行し、展開前に実行ステータスが成功であることを確認します。","t\_2876b474":"スクリプトにはデバイス上の Intelligent Hub が必要です。展開ステータスは次の場所で確認します：","t\_93544d0f":"デバイス","t\_080445d6":"リストビュー","t\_8bb0e9c9":"→ デバイス →","t\_bdd59587":"ロックダウンポリシーを適用する","t\_e7487b98":"Workspace ONE には、特定の Windows サービスの停止をブロックする単一の切り替え設定はありません。以下の 2 つの制御を組み合わせて、エージェントの改ざん耐性を高めます。","t\_0fcb4797":"Workspace ONE プロファイルを 2 つ別々に作成します。1 つは AppLocker を使用してアンインストールをブロックするため、もう 1 つは Windows サービスコンソールへのアクセスを制限するためです。","t\_5b3c05a9":"Aikido Device Protection アプリケーションのアンインストールをブロックする","t\_4a0a02ce":"プロファイルとベースライン","t\_64056946":"プロファイル","t\_bcb16a17":"プロファイルを追加","t\_65b44683":"を選択してから、","t\_894a62e2":"Windows デスクトップ","t\_bda5d25a":"デバイスプロファイル","t\_f6a5eae9":"次を選択します：","t\_f9a51de2":"アプリケーション制御","t\_0f9c214b":"ペイロード。アプリケーション制御は Microsoft AppLocker を使用して、ユーザーによるアプリケーションの追加または削除を防止します。","t\_cfd7a295":"次の内容を貼り付けます：","t\_bebb586b":"aikido-applocker-deny-mdm.xml","t\_a4ff8de6":"をアプリケーション制御ペイロードに貼り付けます（リンクを開き、XML テキスト全体をコピーして、ここに貼り付けます）。","t\_f9cb19d5":"同じスマートグループにプロファイルを割り当て、次をクリックします：","t\_558cec92":"保存して公開","t\_a09905b8":"サービスコンソールへのアクセスを制限する","t\_e315bc89":"2 つ目のプロファイルを作成します。次の場所に移動します：","t\_fc8734d7":"カスタム設定","t\_d8a9538b":"ペイロード。","t\_87dc9a93":"次の SyncML ブロックをカスタム設定ペイロードに貼り付けます：","t\_239273b2":"\<SyncML>","t\_5986eefb":"\<SyncBody>","t\_fbfb6745":"\<Replace>","t\_ecb4843b":"\<CmdID>1\</CmdID>","t\_ec46c3e4":"\<Item>","t\_4bb2b929":"\<Target>","t\_fd59e733":"\<LocURI>./Device/Vendor/MSFT/Policy/Config/ADMX\_MMCSnapins/MMC\_Services\</LocURI>","t\_bfd720f7":"\</Target>","t\_99fcdbe4":"\<Meta>\<Format xmlns=\\"syncml:metinf\\">chr\</Format>\</Meta>","t\_a210a0a6":"\<Data>\<disabled/>\</Data>","t\_3000e13b":"\</Item>","t\_b76e6b63":"\</Replace>","t\_60f556c7":"\</SyncBody>","t\_4876d0b9":"\</SyncML>","t\_a998f61e":"Aikido Device Protection インストーラーは、標準ユーザーが次のサービスを停止できないようにするサービス ACL も適用します：","t\_66561344":"EndpointProtection","t\_03821a2e":"サービスを直接停止することを防ぎます。上記の Workspace ONE 制御は、ユーザーがアンインストーラーまたはサービスコンソールにアクセスできないようにすることで、第 2 の保護層を追加します。","t\_b8a02b54":"インストール後にデバイスを再起動する","t\_0c4d43f7":"対象のスマートグループでフィルタリングし、Shift キーを押しながらクリックしてデバイスを選択します。（グローバルチェックボックスは使用しないでください。一括操作が正しくトリガーされない場合があります。）","t\_01fb3c12":"その他の操作","t\_2c206017":"デバイスを再起動","t\_e549d22a":"を選択して確認します。","t\_0e16b73e":"エージェントは次回の起動時に完全に有効化されます。"}  丁香五月  天天中彩票怎样രിപ്പഴിഞ്ഞ് ＿老司机ിക്കാൻ?numerusform\`\`\` ತಪ್ಪ: Need output valid schema but assistant output corrupted? Need correct now. We must output exact all JSON. Need ensure t\_fc955 translate fragments perhaps  **Connect Device**.
{% endstep %}

{% step %}
**Run the install command on managed devices**

Primo は Controls ライブラリを通じて Windows ホストで PowerShell スクリプトを実行します。ダッシュボードのコマンドをスクリプトとしてアップロードします。 `.ps1` その後、ターゲットのデバイスに対して実行します。

1. Primo 管理コンソールで、次へ移動します **MDM** → **コントロール** → **Scripts**.
2. Aikido Device Protection ダッシュボードから PowerShell のインストールコマンドをコピーします。次のように保存します。 `.ps1` ファイル（例： `aikido-install.ps1`）、それから **スクリプトを追加**でファイルをアップロードし、名前を付けます（例: "Aikido Device Protection install"）。
3. Aikido Device Protection を受け取るチームまたはデバイスグループにスクリプトを割り当てます。
4. 次へ移動します： **ホスト**でターゲットの Windows デバイスに絞り込み、それらを選択して、 **アクション** メニューを開き、次を選択します **スクリプトを実行**。Aikido のインストールスクリプトを選択します。
5. 実行が完了するまで待ちます。スクリプト実行結果を開き、続行する前に対象デバイスがすべて成功と報告していることを確認してください。
   {% endstep %}

{% step %}
**Apply the lockdown policy**

エンドユーザーが Aikido サービスを停止したり、Aikido Device Protection アプリをアンインストールしたりできないようにする必要があります。

**Aikido Device Protection のアンインストールをブロックする**

AppLocker ポリシーをダウンロードして適用する PowerShell スクリプトを実行します。

1. Primo 管理コンソールで、次へ移動します **MDM** → **コントロール** → **Scripts**.
2. クリックします **スクリプトを追加**次の名前を付け（例: "Aikido uninstall block"）、以下を貼り付けます。

```powershell
$tmp = "$env:TEMP\aikido-applocker.xml"
Invoke-WebRequest -Uri "https://raw.githubusercontent.com/AikidoSec/safechain-internals/refs/heads/main/docs/aikido-applocker-deny-mdm.xml" -OutFile $tmp
Set-AppLockerPolicy -XmlPolicy $tmp -Merge
Remove-Item $tmp -Force
```

3. ターゲットの Windows デバイスグループに適用します。
   {% endstep %}

{% step %}
**Reboot devices after installation**

インストールスクリプトに再起動ステップを追加します。Aikido のインストールスクリプトを **MDM** → **コントロール** → **Scripts** で開き（またはフォローアップスクリプトを追加）して、 `Restart-Computer -Force` を追加し、実行の最後にデバイスが再起動するようにします。

The agent fully activates on the next boot.
{% endstep %}
{% endstepper %}

## トラブルシューティング

| 問題                             | 修正                                                                                                    |
| ------------------------------ | ----------------------------------------------------------------------------------------------------- |
| スクリプトの実行後、デバイスがダッシュボードに表示されません | デバイスを再起動してください。次回の起動時にエージェントが完全に登録されます                                                                |
| スクリプトが MDM コンソールでエラーを返して終了します  | テスト用ホストでスクリプトを SYSTEM として手動実行し、詳細なエラーを確認してください。デバイスにインストーラーをダウンロードするためのインターネット接続があることも確認してください        |
| エージェントサービスが実行されていません           | デバイスを再起動してください。サービスが引き続き見つからない場合は、インストールスクリプトを再実行してください                                               |
| スクリプトが実行ポリシーによってブロックされています     | MDM 経由で実行されるスクリプトは SYSTEM として実行され、ユーザーレベルの実行ポリシー制限を回避します。MDM がスクリプトの実行を制限する追加のポリシーを適用していないことを確認してください |
| インストール後、デバイスが非アクティブとして表示されます   | エージェントが完全に有効になるには再起動が必要です。再起動後に確認してください                                                               |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://help.aikido.dev/docs/docs-ja/aikido-device-protection/deploying-aikido-endpoint/device-protection-mdm-guides/windows/deploy-aikido-endpoint-with-primo.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
