App Protection locale
Pris en charge sur : Toutes les plates-formes Citrix Workspace prises en charge
Description
La stratégie de protection des applications locales fournit une protection contre les programmes d'enregistrement de frappe et de capture d'écran pour les applications installées localement sur le système d'exploitation Microsoft Windows. Lorsque la stratégie est : - Non configurée : la fonction de protection des applications locales n'est pas intégrée aux applications installées localement. - Activée : l'application Citrix Workspace active la fonctionnalité de protection des applications locales pour les applications installées localement. - Désactivée : l'application Citrix Workspace désactive la fonctionnalité de protection des applications locales pour les applications installées localement. Le champ Liste des applications locales protégées permet à l'administrateur d'ajouter des informations sur les applications locales qui doivent être protégées. Par exemple : { "containers": [ { "containerID": "4F402876-AB1A-4E9A-8B54-DE3CA0BFC23F", "containerName": "Text Editors", "antiKeyloggingEnabled": "true", "antiScreenCaptureEnabled": "false", "applications": [ { "applicationName": "notepad", "filePath": "C:\\windows\\system32\\notepad.exe", }, { "applicationName": "word", "filePath": "C:\\Program Files\\Microsoft Office\\root\\Office16\\winword.exe", "publisher": "Microsoft Corporation", "signature": "f9a36937c16d0a69a43981dacb6b5686fad84543", "fileMinVersion": "16.0.0.1", "fileMaxVersion": "16.0.15601.20148" } ] }, { "containerID": "GUID", "containerName": "container name", "antiKeyloggingEnabled": "true", "antiScreenCaptureEnabled": "false", "applications": [ { "applicationName": "application name", "filePath": "path-to-exe", "publisher": "signer name", "signature": "certificate thumprint", "fileMinVersion": "Minimum file version", "fileMaxVersion": "maximum file version" } ] } ] }
Registre
SOFTWARE\Policies\Citrix\AppProtection REG Builder
BETAConfigurez l'état et les éléments pour générer les sorties .reg, PowerShell, Intune et SCCM.
Ces exports reproduisent l'effet registre de la stratégie. Modifier le registre directement n'équivaut pas à appliquer la GPO via la console (pas de gpupdate, pas de suivi centralisé). Testez avant la production ; HKLM nécessite des droits administrateur.
Fichier .reg
Windows Registry Editor Version 5.00
; Exported from gporais.com
; Policy: App Protection locale
; State: Enabled
; Supported on: Toutes les plates-formes Citrix Workspace prises en charge
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Citrix\AppProtection]
"localAppProtection"=hex(7):00,00
; REG_MULTI_SZ: one string per input line; edit in regedit if you need richer formatting. PowerShell
# Exported from gporais.com
# Policy: App Protection locale
# State: Enabled
# Supported on: Toutes les plates-formes Citrix Workspace prises en charge
$path = 'HKLM:\SOFTWARE\Policies\Citrix\AppProtection'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'localAppProtection' -Value @() -Type MultiString
# REG_MULTI_SZ: one string per input line; edit in regedit if you need richer formatting. Intune XML
Aucune correspondance directe Policy CSP / OMA-URI pour cette stratégie. Utilisez l'onglet Intune Remediation, ou importez l'ADMX dans Intune. Intune Remediation
# === Detection script ===
# Exported from gporais.com
# Policy: App Protection locale
# State: Enabled
# Supported on: Toutes les plates-formes Citrix Workspace prises en charge
function Test-RegistryValue {
param(
[Parameter(Mandatory = $true)][string]$Path,
[Parameter(Mandatory = $true)][string]$Name,
[object]$Expected,
[ValidateSet('String', 'DWord', 'MultiString')][string]$Kind = 'String',
[switch]$Absent
)
try {
$item = Get-ItemProperty -LiteralPath $Path -Name $Name -ErrorAction Stop
} catch {
return $Absent.IsPresent
}
if ($Absent.IsPresent) { return $false }
$actual = $item.$Name
if ($Kind -eq 'DWord') { return ([int64]$actual) -eq ([int64]$Expected) }
if ($Kind -eq 'MultiString') {
$actualValues = @($actual)
$expectedValues = @($Expected)
if ($actualValues.Count -ne $expectedValues.Count) { return $false }
for ($i = 0; $i -lt $expectedValues.Count; $i++) {
if ([string]$actualValues[$i] -ne [string]$expectedValues[$i]) { return $false }
}
return $true
}
return [string]$actual -eq [string]$Expected
}
$checks = @(
(Test-RegistryValue -Path 'HKLM:\SOFTWARE\Policies\Citrix\AppProtection' -Name 'localAppProtection' -Expected @() -Kind MultiString)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: App Protection locale
# State: Enabled
# Supported on: Toutes les plates-formes Citrix Workspace prises en charge
$path = 'HKLM:\SOFTWARE\Policies\Citrix\AppProtection'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'localAppProtection' -Value @() -Type MultiString
# REG_MULTI_SZ: one string per input line; edit in regedit if you need richer formatting. SCCM CI
# Exported from gporais.com
# Policy: App Protection locale
# State: Enabled
# Supported on: Toutes les plates-formes Citrix Workspace prises en charge
# SCCM Configuration Item guidance:
# Create a Configuration Item of type "Setting: Script".
# Discovery script: use the Detection script below.
# Remediation script: use the Remediation script below.
# Compliance rule: the Discovery script output equals 'Compliant'.
# === Detection script ===
# Exported from gporais.com
# Policy: App Protection locale
# State: Enabled
# Supported on: Toutes les plates-formes Citrix Workspace prises en charge
function Test-RegistryValue {
param(
[Parameter(Mandatory = $true)][string]$Path,
[Parameter(Mandatory = $true)][string]$Name,
[object]$Expected,
[ValidateSet('String', 'DWord', 'MultiString')][string]$Kind = 'String',
[switch]$Absent
)
try {
$item = Get-ItemProperty -LiteralPath $Path -Name $Name -ErrorAction Stop
} catch {
return $Absent.IsPresent
}
if ($Absent.IsPresent) { return $false }
$actual = $item.$Name
if ($Kind -eq 'DWord') { return ([int64]$actual) -eq ([int64]$Expected) }
if ($Kind -eq 'MultiString') {
$actualValues = @($actual)
$expectedValues = @($Expected)
if ($actualValues.Count -ne $expectedValues.Count) { return $false }
for ($i = 0; $i -lt $expectedValues.Count; $i++) {
if ([string]$actualValues[$i] -ne [string]$expectedValues[$i]) { return $false }
}
return $true
}
return [string]$actual -eq [string]$Expected
}
$checks = @(
(Test-RegistryValue -Path 'HKLM:\SOFTWARE\Policies\Citrix\AppProtection' -Name 'localAppProtection' -Expected @() -Kind MultiString)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: App Protection locale
# State: Enabled
# Supported on: Toutes les plates-formes Citrix Workspace prises en charge
$path = 'HKLM:\SOFTWARE\Policies\Citrix\AppProtection'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'localAppProtection' -Value @() -Type MultiString
# REG_MULTI_SZ: one string per input line; edit in regedit if you need richer formatting.