Situation
Java hat seit der Java Runtime Environment – Version 1.7 Update 10 eine zweite Updateprüfung eingebaut, welche beim Öffnen einer Java-Anwendung ausgeführt wird und bei der Verwendung einer veralteten Java-Version folgende Meldung ausgibt.

Deutsch:
clip_image001_thumb[1]
Java-Update erforderlich
Ihre Java-Version ist veraltet.
Aktualisieren (empfohlen), Blockieren, Später

Englisch:
clip_image002_thumb[1]
Java Update Needed
Your Java version is insecure.
Update, Block, Later

 

Das heißt …
Zum vollständigen Deaktivieren der automatischen Java Updates und Updateaufforderungen müssen nun zwei Einstellungen gesetzt werden. Diese möchte ich hier kurz darstellen.

 

1. Automatische Java Updates deaktivieren
Das Deaktivieren der automatischen Java Updates kann weiterhin über einen HKEY_LOCAL_MACHINE – Registry-Key vorgenommen werden.
Dies hatte ich bereits in folgendem Artikel genauer beschrieben:
Automatische Java Runtime Environment 1.7 Updates über Gruppenrichtlinie oder SCCM deaktivieren

 

2. Update-Meldung beim Öffnen einer Java-Applikation deaktivieren
Zum Deaktivieren der Update-Meldung müssen zwei Benutzerbezogene Einstellungen vorgenommen werden.

Diese lassen sich mit Hilfe der Group Policy Preferences (GPP), oder alternativ mit Hilfe eines Anmeldeskripts (Logon-Script) über eine Gruppenrichtlinie (GPO) setzten.
In diesem Artikel möchte ich die erste möglichkeit Beschreiben. Die Alternativlösung, welche von Java.com empfohlen wird, jedoch auf die veraltete Anmeldeskript-Technologie setzt, wird in folgendem Artikel beschrieben: „Automatische Java Runtime Environment 1.7 Updates vollständig mit Hilfe eines Anmeldeskripts deaktivieren (ab Version 1.7 Update 10)“

(Eine Umsetzung mit Hilfe des Microsoft ConfigMgr 2012 durch das Mitgeben der Einstellungen während der Installation ist nicht möglich, da die Einstellungen pro Benutzer gesetzt werden müssen.)

 

2.1 Setzen eines Benutzer Registry-Keys
Die erste Einstellung wird durch das Setzen des Registry-Keys „deployment.expiration.check.enabled“ vorgenommen.

Group Policy Preference (GPP) „Registrierung“ öffnen

clip_image003_thumb[1]

 

Neuen Eintrag erstellen
clip_image004_thumb[3]
Aktion: Ersetzen
Struktur: HKEY_CURRENT_USER
Pfad: Software\AppDataLow\Software\JavaSoft\DeploymentProperties
Name: deployment.expiration.check.enabled
Typ: REG_SZ
Daten: false

 

Zielgruppenadressierung (Item-Level Targeting)
Damit die Einstellung nur auf Rechnern mit einer installierten Java-Version angewendet wird, kann zusätzlich eine Zielgruppenadressierung (Item-Level Targeting) angegeben werden.

clip_image005_thumb[1]

clip_image006_thumb[1]
Hinweis: Das Bild bezieht sich auf einem 64-Bit-Rechner mit einer 32-Bit-Java-Version!

 

2.2 Erstellen und kopieren der Konfigurationsdatei
Im nächsten Schritt muss der Datei „deployment.properties“, welche sich im Verzeichnis „%USERPROFILE%\AppData\LocalLow\Sun\Java\Deployment\“ befindet, die Zeile „deployment.expiration.check.enabled=false“ hinzugefügt werden.
Zur Umsetzung dieser Anforderung können wir uns folgende Verhaltensweise von Java zunutze machen.
Ist die Datei „deployment.properties“ nicht vorhanden, wird sie von Java erstellt. Ist Sie vorhanden, jedoch inhaltlich nicht vollständig, wird der fehelende Inhalt ergänzt.
Legt man also eine Datei an, welche lediglich die Zeile „deployment.expiration.check.enabled=false“ enthält, werden beim nächsten Start von Java alle weiteren Zeilen ergänzt.Somit kann einfach eine solche Datei angelegt und mit Hilfe einer Gruppenrichtlinie in den Ordner kopiert werden.

 

Datei anlegen
clip_image007_thumb[1]

clip_image008_thumb[1]
Inhalt: deployment.expiration.check.enabled=false

 

Richtlinienordner analysieren
Zum Kopieren der Datei mit Hilfe einer Richtlinie muss diese in einem freigegebenen Ordner abgelegt werden. Da die Richtlinie selbst einen Ordner im SYSVOL-Verzeichnis besitzt, kann dieser verwendet werden.
Zur Analyse des Ordnerziels muss die Richtlinien-ID über die „Details“ der Richtlinie ermittelt werden.

clip_image009_thumb[2]

Der Ordner der Gruppenrichtlinie ist nach der ID benannt und befindet sich in folgendem Netzwerkpfad:
\\domain.loc\SYSVOL\domain.loc\Policies\…
clip_image010_thumb[1]

 

Datei im Richtlinienordner ablegen
Die Datei muss nun im User-Richtlinienordner abgelegt werden.
(Ich habe sie im Unterordner „…\User\Preferences\Files\ abgelegt.)

clip_image011_thumb[1]

 

Richtlinie bearbeiten
Das Kopieren der Datei kann über die Group Policy Preference (GPP) „Dateien“ vorgenommen werden.

clip_image012_thumb[1]

clip_image013_thumb[1]
Aktion: Ersetzen
Quelle: \\domain.loc\SYSVOL\domain.loc\Policies\{B0BC5A07-B9DD-4F53-B32D-26488F629AF7}\User\Preferences\Files\deployment.properties
Ziel: %SystemDrive%\Users\%LogonUser%\AppData\LocalLow\Sun\Java\Deployment\deployment.properties

Der Haken „Im Sicherheitskontext des angemeldeten Benutzers ausführen…“ muss unbedingt gesetzt sein, damit der Kopiervorgang funktioniert!
clip_image014_thumb[1]

 

Zielgruppenadressierung (Item-Level Targeting)
Damit die Einstellung nur auf Rechnern mit einer installierten Java-Version angewendet wird, kann zusätzlich eine Zielgruppenadressierung (Item-Level Targeting) angegeben werden.

clip_image015_thumb[1]

clip_image006[1]_thumb[2]
Hinweis: Das Bild bezieht sich auf einem 64-Bit-Rechner mit einer 32-Bit-Java-Version!