AllowExecute Security Einstellung / PDF Drucker
Ab Version 10.14 ist es nicht mehr erlaubt die Ereignissteuerungen/Settings AfterPrintProgram, RunOnSuccess, und RunOnError in geteilten oder globalen Konfigurationen direkt, und damit ohne Einrichtung der entsprechenden Rechte durch einen Administrator zu verwenden. Dies ist ein Sicherheitsmassnahme. Sie können diese Funktion also weiterhin nutzen, müssen sie aber explizit durch das Ändern eines Registry – Schlüssels, oder das Ausführen des Setups über einen speziellen Installationsparameter freigeben.
Verteilte und globale Konfigurationen
Dadurch das verteile und globale Konfigurationen erst einmal von Jedermann in den ProgramData Verzeichnis erstellt/gespeichert werden können, benötigt man zusätzliche Sicherheitsmechanismen um Benutzer durch andere Benutzer-Interaktionen zu schützen.
Normalerweise haben alle Benutzer Zugriff auf das ProgramData Verzeichnis in welchem die globalen oder verteilten Konfigurationen gespeichert sind. Dies bedeutet, dass ein potentielle Sicherheitsbedrohung von einem anderen NamedUser ausgehen kann, welcher Zugriff auf das System hat. Um das Sicherheitsrisiko zu minimieren, sollten also alle NamedUser in einer dafür angelegten Benutzergruppe sein. Anonyme Benutzer können so nicht auf die Konfigurationen zugreifen. Dies minimiert das Risiko signifikant.
Die betroffenen Konfigurationsdateien sind die verteilten Option Settings, global.ini, und die defaults.ini. Die für die normalen Benutzer-Settings verwendete settings.ini und die runonce.ini sollten davon ausgeschlossen sein da sie im Kontext der lokalen Benutzerrechte eines NamedUsers laufen.
Command Line Execution erlauben
Sie können einen Wert in der Registry setzen, um eine Command Line Execution explizit für verteilte und globale Konfigurationen zu erlauben. Diese Einstellung wird das standardmäßige Verhalten (nicht erlaubt) hierzu ändern! Der dafür benannte Regitry Eintrag heisst „AllowExecute“ und ist zu finden unter:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers\PRINTER NAME
AllowExecute ist ein String – Wert, wenn sie diesen auf 1 setzen wird das Ausführen von Command Line Executions erlaubt – andernfalls wird es blockiert. Wenn der Registry Eintrag fehlt, wird ebenfalls geblockt!
Sie sollten das Feature der Command Line Execution (Programmausführung nach PDF Erzeugungen) nur erlauben, wenn sie ihren Benutzern vertrauen oder aber ihre File System Sicherheit ändern wie oben bereits beschrieben!
Security Empfehlungen
Wenn sie AllowExecute erlauben, also das Ausführen von Programmen nach der PDF Erzeugung, dann ist zu empfehlen das sie die File und Verzeichnisrechte entsprechend anpassen. Nur Administratoren und vertrauenswürdige Benutzer sollten Schreibzugriff auf die speziellen Verzeichnisse des PDF Druckers unter ProgramData haben.
Verteilte und globale Konfigurationsdateien des PDF Druckers werden in den nachfolgenden Verzeichnissen und Unterverzeichnissen gespeichert:
C:\ProgramData\PDF Writer\PRINTER NAME
Rückwärtskompatibilität
Die Einführung des „AllowExecute“ - Settings kann ggf. die Rückwärtskompatibilität angelegter Konfigurationen behindern. Wenn sie die verteilten/globalen Konfigurationen aus älteren Version ab 10.14 verwenden, so müsste ggf. „AllowExecute“ auf „1“ gesetzt werden um diesem Umstand entgegenzuwirken.