このドキュメントでは、Microsoft Intuneを使用してCisco Secure EndpointまたはSecure Clientを導入するプロセスの概要を説明します。このドキュメントでは、Secure Endpoint/Secure ClientインストーラーからMicrosoft Intuneでサポートされるアプリを作成し、そのアプリをMicrosoft Intune管理センターを使用して展開に使用する手順を説明します。具体的には、Intune Win32コンテンツ準備ツールを使用して、Cisco Secure EndpointインストーラーをWin32アプリケーションとしてパッケージ化し、その後、Intuneを使用してアプリケーションを構成および展開します。アプリケーションの作成には、Microsoftの公式の準備ツールを使用しました。
地域に応じて、該当するセキュアエンドポイントポータル(https://apps.security.cisco.com/overview)にログインします。


Win32コンテンツ準備ツールは、IT管理者がMicrosoft Intuneを介して展開用のWin32アプリケーション(従来のWindowsデスクトップアプリケーションなど)を準備するために役立つ、Microsoft Intuneによって提供されるユーティリティです。このツールは、Win32アプリケーションインストーラー(.exe、.msi、関連ファイルなど)を.intunewinファイル形式に変換します。このファイル形式は、Intuneを介してこれらのアプリを展開するために必要です。
Intuneファイルを準備するには、次の手順に従います:

次の操作を行ってください。
次の2つのアクションがスクリーンショットに示されています。



%windir%\SysNative\WindowsPowershell\v1.0\powershell.exe -noprofile -executionpolicy Bypass -file .\Install-CiscoSecureEndpoint.ps1ここで示すコードは例であり、このインストーラのインストールコマンドとして任意のコードを使用できます


Detection RulesタブのRules formatドロップダウンメニューには、Manually configure detection rulesとUse a custom detection scriptの2つのオプションがあります。どちらのオプションも、導入要件に基づいて選択できます。
[検出規則を手動で構成する]を選択すると、MSI、ファイル、またはレジストリなどの規則の種類を定義して、アプリケーションの存在を検出できます。このドキュメントでは、代替オプションのカスタム検出スクリプトを使用するが選択されています。
Confirm-CSEInstall.ps1という名前のPowerShellスクリプトを使用して、Cisco Secure Endpointが正常にインストールされたことを確認します。これについては、このドキュメントの最後に記載しています。






これで、Intuneを使用してCisco Secure Endpointを展開するプロセスが完了しました。
注意:このインストールスクリプトは、Intuneコンバーターを使用しているインストーラーと、このガイドの手順3で説明したコマンドラインで参照されているPSスクリプトの正確な名前と組み合わせ、次の場所のIntuneに配置する必要があります:
アプリケーションの追加 – >プログラム – > Installコマンド
注:以下のスクリプトは、このガイドを作成するためにラボ環境で使用されるデモンストレーションの実際のサンプルです。適切なテストの後にそのまま使用することも、必要に応じて変更することもできます。
[CmdletBinding()]
param ()
$cse_exe =
$version =
if ($PSCommandPath -eq $null) {
function GetPSCommandPath() {
return $MyInvocation.PSCommandPath;
}
$PSCommandPath = GetPSCommandPath
}
$script = [pscustomobject]@{
"Path" = Split-Path $PSCommandPath -Parent
"Name" = Split-Path $PSCommandPath -Leaf
}
Set-Location -Path $script.Path
$cse_installer = [IO.Path]::Combine($script.Path, $cse_exe)
$csc_installer_args = "/R /S"
<#
Cannot use -wait for 'Cisco Secure Endpoint' and therefore cannot get the exit code to return.
Using -wait, returns varied results, instead use Get-Process and while loop to wait for installation to complete.
#>
$install = Start-Process -WorkingDirectory "$($script.Path)" -FilePath "${cse_installer}" -ArgumentList "${csc_installer_args}" -PassThru -NoNewWindow
while (Get-Process "$($cse_exe -replace '.exe', '')" -ErrorAction SilentlyContinue)
{
Start-Sleep -Seconds 10
}
$exeName =
$exePath = Join-Path -Path $PSScriptRoot -ChildPath $exeName
if (-not (Test-Path $exePath)) {
Write-Error "Executable not found: $exePath"
exit 1
}
# Use silent mode – the most commonly documented switch for Cisco XDR / Secure Client installers
$arguments = "-q" # or try "--quiet" if -q fails in your specific build
try {
$process = Start-Process -FilePath $exePath -ArgumentList $arguments -NoNewWindow -Wait -PassThru
if ($process.ExitCode -eq 0) {
Write-Output "Cisco XDR installation completed successfully (exit code 0)."
exit 0
} else {
Write-Error "Installation failed with exit code: $($process.ExitCode)"
exit $process.ExitCode
}
}
catch {
Write-Error "Exception during installation: $_"
exit 1
}
ヒント:これはオプションです。Intune管理ポータルで手動で構成された検出ルールをいつでも使用できます。
[CmdletBinding()]
param ()
$version =
<#
https://learn.microsoft.com/en-us/intune/intune-service/apps/apps-win32-add#step-4-detection-rules
The app gets detected when the script both returns a 0 value exit code and writes a string value to STDOUT
The Intune agent checks the results from the script. It reads the values written by the script to the STDOUT stream,
the standard error (STDERR) stream, and the exit code. If the script exits with a nonzero value, the script fails and
the application detection status isn't installed. If the exit code is zero and STDOUT has data, the application
detection status is installed.
#>
$cse = Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*, HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* -ErrorAction SilentlyContinue | Where-Object { $_ -like "*Immunet Protect*" } | Where-Object { $_.DisplayName -like "*Cisco Secure Endpoint*" }
if ($cse | Where-Object { [System.Version] $_.DisplayVersion -ge [System.Version] "${version}" })
{
Write-Host "Installed"
exit 0
}
exit 1
注:上記のスクリプトは情報提供のみを目的としており、Cisco TACではサポートされていません。環境ごとにルールやポリシーが異なる場合があり、適切なテストを実施する必要があります。サードパーティの展開ツールのトラブルシューティングはベストエフォートとして扱われます。まずは、ポータルまたは管理ステーションの両方でIntuneログを確認する必要があります。
| 改定 | 発行日 | コメント |
|---|---|---|
1.0 |
12-Aug-2025
|
初版 |