In questo documento viene descritto il processo di distribuzione di Cisco Secure Endpoint o Secure Client con Microsoft Intune. In questo documento viene descritto come creare un'app supportata da Microsoft Intune dai programmi di installazione di Secure Endpoint/Secure Client e come utilizzarla per la distribuzione tramite l'interfaccia di amministrazione di Microsoft Intune. In particolare, il processo include il packaging del programma di installazione di Cisco Secure Endpoint come applicazione Win32 utilizzando lo strumento di preparazione dei contenuti Win32 di Intune, seguito dalla configurazione e dalla distribuzione dell'app tramite Intune. Per la creazione dell'app è stato utilizzato lo strumento ufficiale Microsoft Prep Tool.
Accedere al rispettivo Secure Endpoint Portal, a seconda dell'area geografica: https://apps.security.cisco.com/overview


Lo strumento Win32 Content Prep è un'utilità fornita da Microsoft Intune per aiutare gli amministratori IT a preparare le applicazioni Win32 (ad esempio le tradizionali applicazioni desktop di Windows) per la distribuzione tramite Microsoft Intune. Lo strumento converte i programmi di installazione delle applicazioni Win32 (ad esempio file con estensione exe, msi e file correlati) in un formato di file con estensione intunewin, necessario per la distribuzione di queste app tramite Intune.
Per preparare il file di Intune, eseguire la procedura seguente:

Attenersi alla procedura seguente:
Queste due azioni sono mostrate nello screenshot:



%windir%\SysNative\WindowsPowershell\v1.0\powershell.exe -noprofile -executionpolicy Bypass -file .\Install-CiscoSecureEndpoint.ps1Si noti che il codice qui presentato funge da esempio e può essere utilizzato come comando di installazione per questo programma di installazione


Nella scheda Regole di rilevamento, il menu a discesa Formato regole fornisce due opzioni: Configurare manualmente le regole di rilevamento e utilizzare uno script di rilevamento personalizzato. È possibile selezionare entrambe le opzioni in base ai requisiti di distribuzione.
Quando si sceglie Configura manualmente le regole di rilevamento, è possibile definire un tipo di regola quale MSI, File o Registro di sistema per rilevare la presenza dell'applicazione. In questo documento è stata selezionata l'opzione alternativa Usa script di rilevamento personalizzato.
Per verificare la corretta installazione di Cisco Secure Endpoint, viene utilizzato uno script di PowerShell denominato Confirm-CSEInstall.ps1. ed è elencato alla fine di questo documento.






Il processo di distribuzione di Cisco Secure Endpoint con Intune è stato completato.
Attenzione: Questo script di installazione deve essere combinato con il programma di installazione utilizzando Intune Converter e con il nome esatto dello script PS a cui si fa riferimento nella riga di comando indicata al passaggio 3 della presente guida e inserito in Intune in:
Aggiungi app — > Programma — > Comando Installa
Nota: Gli script riportati di seguito sono esempi di utilizzo delle dimostrazioni utilizzate in ambiente di emulazione per creare questa guida. È possibile utilizzarli così come sono dopo averne eseguito il test appropriato o modificarli come desiderato.
[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
}
Suggerimento: Questa operazione è facoltativa. È sempre possibile utilizzare le regole di rilevamento configurate manualmente nel portale di gestione di 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
Nota: Gli script sopra riportati sono intesi solo a scopo didattico e non sono supportati da Cisco TAC, ogni ambiente potrebbe essere diverso a seconda delle regole o delle politiche in vigore ed è necessario eseguire test appropriati. Gli strumenti di risoluzione dei problemi per l'installazione di terze parti verranno trattati nel modo migliore e dovrebbero iniziare con la revisione dei log di Intune sia nel portale che sulla stazione gestita.
| Revisione | Data di pubblicazione | Commenti |
|---|---|---|
1.0 |
12-Aug-2025
|
Versione iniziale |