Erstens, damit die Installation und Aktualisierung des Agenten funktioniert, wenn ein Deinstallationspasswort konfiguriert ist, dürfen Sie nicht das MSI-Paket verwenden (Installation OK, Aktualisierung KO, Agentenschutzpasswort wird angefordert...).
Vom Server muss ein ausführbares Installationspaket erstellt werden, das für Installationen und Aktualisierungen ohne Passwortabfrage funktioniert:
Der angepasste wapt-Paketcode:
Code: Alle auswählen
# -*- coding: utf-8 -*-
from setuphelpers import *
uninstallkey = ['{1841AFE1-4BA7-44D4-8700-6ACF860A8ED1}']
def install():
# Initializing variables
package_version = control.get_software_version()
# Vérification de la version pour gestion d'erreur
for to_install in installed_softwares('Trend Micro Apex One Security Agent'):
if Version(to_install["version"]) < Version(package_version) or force:
print ('installing %s' % control.package)
install_exe_if_needed('TrendMicroSecurityAgent.exe')
else:
print ('%s already installed' % control.package)
uninstallkey.remove('{1841AFE1-4BA7-44D4-8700-6ACF860A8ED1}')
Zur Deinstallation schlage ich zwei von mir getestete Lösungen vor:
Lösung 1:
Durch Deaktivieren des Deinstallationskennworts in der Serverkonsole wird der Registrierungsschlüssel „Deinstallation zulassen“ auf den Agenten auf 1 gesetzt. Die Deinstallation ist mit folgendem Code möglich:
Code: Alle auswählen
def uninstall():
print ('uninstalling %s' % control.package)
run(r'"msiexec.exe" /x {1841AFE1-4BA7-44D4-8700-6ACF860A8ED1} /qn')
Lösung 2:
Die Deinstallation ist mit dem folgenden Code möglich, ohne das Passwort in der Administratorkonsole zu deaktivieren (das Passwort befindet sich im Paket im Klartext):
Code: Alle auswählen
def uninstall():
print ('uninstalling %s' % control.package)
run(r'"%s\Trend Micro\Security Agent\pccntmon.exe" -m <uninstall_password>' % programfiles32)
Quelle
Einige Spuren, die sich als haltlos erwiesen:
Die Erstellung des ausführbaren Pakets durch den Packager-Client basiert auf der Konfigurationsdatei ofcscan.ini auf dem Server; durch Bearbeiten dieser Datei können Sie die Selbstschutzoptionen des Agenten ermitteln:
[INI_CLIENT_SECTION]
SP_EnableFileProtection = 1
SP_EnableRegistryKeyProtection = 1
SP_EnableProcessProtection = 1
Leider scheint es nicht zu funktionieren, sie auf 0 zu setzen...
Im Register des folgenden Agenten sind die Schlüssel für die Selbstschutzoptionen jedoch tatsächlich zu finden:
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\TrendMicro\PC-cillinNTCorp\CurrentVersion\AEGIS
Durch Setzen des Schlüssels „SP_EnableRegistryKeyProtection“ auf 0 wird der Registrierungsschutz tatsächlich deaktiviert, sodass der Schlüssel „Deinstallation zulassen“ innerhalb eines WAPT-Pakets erneut geändert werden kann, ohne das Agentenpasswort zu deaktivieren. Das Problem besteht darin, dass der Schlüssel „SP_EnableRegistryKeyProtection“ nicht geändert werden kann, während der Agent ausgeführt wird. Man muss den Agenten zuerst beenden, woraufhin dieser zur Eingabe des Passworts auffordert. Kurz gesagt, ich sehe keine Möglichkeit, die Deinstallation innerhalb eines WAPT-Pakets vollständig zu automatisieren.