Zielgruppe
Firmenadministratoren, auf deren verwalteten Computern Arbeitsabläufe unter Verwendung persistenter globaler Variablen (Windows und Macintosh) oder benutzerdefinierter JavaScripts (nur Windows) ausgeführt werden.
Übersicht
Aufgrund des großen Interesses von Adobe an Sicherheitsbelangen werden regelmäßig Funktionsänderungen für Acrobat und Adobe Reader veröffentlicht. Dies dient der Verbesserung der Sicherheit und Stärkung der Widerstandsfähigkeit des Produkts gegen schädliche Angriffe. In diesem Rahmen werden mit der Version 10.1.1 Änderungen der JavaScript-Funktion eingeführt, mit der globale Variablen gespeichert und benutzerdefinierte Skripten ausgeführt werden.
Vor 10.1.1 konnten Endbenutzer JavaScript-Dateien unter %ApplicationData%\Adobe\(Produktname)\(Version)\JavaScripts ablegen. Diese Dateien wurden beim Anwendungsstart automatisch ausgeführt. Beispiel: Die IT-Abteilung legt auf einem Windows XP-Computer unter C:\Dokumente und Einstellungen\(Benutzername)\Anwendungsdaten\Adobe\Acrobat\10.0\JavaScripts eine JS-Datei ab, mit der die Benutzeroberfläche des Produkts durch Ausblenden oder Hinzufügen von Menübefehlen verändert wird. Darüber hinaus enthält der Ordner die beiden Dateien „glob.js“ und „glob.settings.js“, die das Produkt lesen und in die es schreiben kann, wenn es globale Variablen speichert.
Änderungen in 10.1.1
Normalerweise schreiben Acrobat-Prozesse nichts in den Ordner %ApplicationData%\ Acrobat\Privileged\10.0. Darüber hinaus werden Sandbox-Prozesse ausdrücklich daran gehindert, in diesen Ordner zu schreiben. Daher ist der Betrieb am sichersten, wenn in Acrobat die „Geschützte Ansicht“ und in Reader der „Geschützte Modus“ aktiviert sind, sodass für alle Prozesse ein Sandboxing erfolgt. Darüber hinaus werden mit 10.1.1 die folgenden Änderungen eingeführt:
- Neuer JS-Speicherort für Benutzer: Der JavaScript-Benutzerordner wird verschoben von
- Vista und Windows 7: Users\(Benutzername)\AppData\Roaming\Adobe\Acrobat\10.0\JavaScripts nach Users\(Benutzername)\AppData\Roaming\Adobe\Acrobat\Privileged\10.0\JavaScripts. Beispiel: Der neue Pfad lautet: C:\Users\HansBenutzer\AppData\\Roaming\Adobe\Acrobat\Privileged\10.0\JavaScripts
- XP: Dokumente und Einstellungen\(Benutzername)\Anwendungsdaten\Adobe\Acrobat\10.0\JavaScripts nach Dokumente und Einstellungen\(Benutzername)\Anwendungsdaten\Adobe\Acrobat\Privileged\10.0\JavaScripts. Beispiel Der neue Pfad lautet: C:\Dokumente und Einstellungen\HansBenutzer\Anwendungsdaten\Adobe\Acrobat\Privileged\10.0\JavaScripts
Hinweis: Diese Änderung bezieht sich nur auf Windows. Zudem wirkt sich die Änderung nicht auf das Verhalten von C:\Programme\Adobe\(Produktname und Version)\(Produktname)\JavaScripts aus
- Neues Format und neuer Speicherort für die persistenten globalen Variablen: Die Variableneinstellungen, die in glob.settings.js und glob.js gespeichert werden, befinden sich nun unter %ApplicationData%\Adobe\Acrobat\10.0\JSCache in einem neuen Verzeichnis. Mit den Schlüssel-Wert-Paaren, die aus ASCab ausgelesen werden, werden die persistenten globalen Variablen initialisiert. In diesem Ordner werden keine Einstellungen als JavaScript-Dateien gespeichert.
Erforderliche Schritte
Wenn Sie keine persistenten globalen Variablen gespeichert oder benutzerdefinierte JavaScripts in den entsprechenden Ordnern abgelegt haben, können Sie diese Änderung ignorieren. Wenn jedoch eins davon der Fall ist, sichern Sie die Integrität Ihrer Arbeitsabläufe, indem Sie folgende Schritte ausführen:
Bei Problemen mit globalen Variablen (Windows und Macintosh)
- Vergewissern Sie sich, dass in glob.js und glob.settings.js keine anderen Werte als Schlüssel-Wert-Paare und Skalarwerte gespeichert sind. Arbeitsabläufe, für die in diesen Dateien andere Methoden gespeichert werden, schlagen sonst fehl.
- Da alle Daten, die sich zum Zeitpunkt der Anwendung von 10.1.1 in glob.js und glob.setting.js befinden, verloren gehen, stellen Sie mit folgenden Schritten die Integrität Ihrer Arbeitsabläufe sicher:
1. Bei Acrobat haben Sie folgende Möglichkeiten:
- Kopieren Sie das JavaScript in den Dateien „glob.js“ und „glob.setting.js“ aus dem alten JavaScript-Ordner und führen Sie es in einer neuen Acrobat-Sitzung in der JavaScript-Konsole aus. Damit exportieren Sie die gespeicherten globalen Variablen in die neue Acrobat-Sitzung. Oder,
- Kopieren Sie „glob.js“ und „glob.setting.js“ aus dem alten JavaScript-Ordner in den Ordner %Program Files%/Adobe/Reader/JavaScript und löschen Sie anschließend die Originaldateien. Starten Sie das Programm erneut, um die Variablen in das neue Format zu exportieren.
Hinweis: Bei Adobe Reader können Sie nur die zweite Methode verwenden, da die JavaScript-Konsole nicht verfügbar ist, es sei denn, Sie haben sie aktiviert wie unter http://blogs.adobe.com/pdfdevjunkie/2008/10/how_to_use_the_javascript_debu.html beschrieben.
2. Wenden Sie die JavaScript-Methode „setPersistent“ manuell auf alle globalen Variablen an, um sicherzustellen, dass sie ordnungsgemäß in das neue Format migriert werden. Führen Sie beispielsweise in der Konsole das folgende JavaScript aus:
for (var name in global) global.setPersistent("global."+name, true);
Für JavaScript-Benutzerprobleme (nur Windows)
Kopieren Sie alle benutzergenerierten JavaScript-Dateien von %APPDATA%\Adobe\Acrobat\10.0\JavaScripts nach %APPDATA%\Adobe\Acrobat\Privileged\10.0\JavaScripts.