Wie verwalten Sie Java in Ihrer Windows / Active Directory-Umgebung?

16

Wie ich vermute, viele Leute haben wir eine Windows / Active Directory-Umgebung und viele interne Branchenanwendungen, die Java erfordern. Wir haben die Erfahrung gemacht, dass Java in einer solchen Unternehmensnetzwerkumgebung nicht gut funktioniert. Die Erstinstallation ist in Ordnung (zumindest gibt es heutzutage ein MSI), aber es kann eine ziemliche Herausforderung sein, die Dinge in Bewegung zu halten.

Spezifische Probleme, auf die wir stoßen, sind:

  • Java hat einen eigenen Updater und ist daher nicht an unsere internen Patch-Management-Systeme gebunden.
  • Das Fehlen von Tools für die Verwaltung von Java-Einstellungen über Gruppenrichtlinienobjekte.
  • Die Anforderung, dass Benutzer bestimmte Einstellungen manuell konfigurieren müssen.
  • Mehrere Java-Laufzeiten auf jeder Maschine (Oracle Jinitiator ist hier ein besonderer Täter).
  • Kritische Einstellungsdateien, die im Ordner "Programme" gespeichert sind.

Bei uns handelt es sich meistens um eine Reihe von Anmeldeskripten und kniffligen Problemumgehungen, aber ich bin daran interessiert zu hören, wie andere Leute mit diesen Elementen umgehen und ob es noch andere Dinge gibt, auf die man hier achten muss.

Maximus Minimus
quelle

Antworten:

11

Um mit jedem Ihrer Anliegen zu sprechen:

Ich stelle seit einigen Jahren Java-Laufzeitumgebungsversionen als Softwareinstallationszuweisungen aus Gruppenrichtlinien bereit. Ich deaktiviere die Updater-Funktionalität als Transformation für das MSI und stelle bei Bedarf Updates durch obligatorische Upgrades bereit. Wenn Maschinen eine ältere JRE behalten müssen (weil eine Anwendung dies erfordert), verwende ich Sicherheitsgruppen, um zu verhindern, dass Maschinen neuere Upgrades erhalten. (Zum Glück musste ich das nicht oft tun.)

Ich erstelle Transformationen zu Suns MSI mit Microsoft's Orca Tool. Es mag schön sein, ein Tool wie den "Anpassungsassistenten" von Adobe zu haben, aber ich kann mit Orca alles tun, was ich brauche.

Ich hatte keine Gelegenheit für Benutzer, "bestimmte Einstellungen manuell zu konfigurieren", aber ich würde es auf zwei Arten handhaben. Wenn einige Benutzer andere Einstellungen als die "Norm" benötigen, würde ich entweder eine Gruppenrichtlinieneinstellung (vorausgesetzt, sie befindet sich im Benutzerteil der Registrierung) oder eine administrative Vorlage bereitstellen um die Einstellung zu ändern (vorausgesetzt, sie befindet sich im Computerteil der Registrierung). Wenn es erforderlich ist, dass der Benutzer die Einstellung nach Bedarf ändern darf, ändere ich widerwillig die Berechtigungen für die Registrierung, damit der Benutzer (wirklich eine Sicherheitsgruppe, die den Benutzer enthält) dies tun kann. Widerlich.

Wenn eine App eine eigene JRE benötigt, kann ich die Installation dieser JRE mit dem Skript / Gruppenrichtlinienobjekt verknüpfen, das die Anwendung bereitstellt, und die beiden als eine Einheit behandeln. Das ist der einfachste Weg, den ich mir vorstellen kann, damit umzugehen.

Ich kann mich nur schwer daran erinnern, welche Einstellungen unter "Programme" gespeichert sind, aber ich erteile einer Sicherheitsgruppe mit Benutzerkonten, die diese Einstellungen ändern müssen, widerwillig die Berechtigung, falls dies erforderlich ist. Ich würde wahrscheinlich auch meinen Kopf in meinen Händen halten und Sun verfluchen.

Solange Sun sich nicht um die Bereitstellung und Verwaltung der JRE im Unternehmen kümmert, ist es wahrscheinlich, dass wir alle hackige Workarounds haben werden, um uns darum zu kümmern. Es ist frustrierend, aber leider typisch. Anscheinend hat die überwiegende Mehrheit der Entwickler keine Vorstellung davon, wie es ist, Sysadmin-Arbeit zu leisten. <Seufzer>

Evan Anderson
quelle
Würden Sie beschreiben, wie Sie die automatische Aktualisierung deaktivieren? Ich bin mit Orca vertraut und die Idee von Windows Installer verwandelt sich. Wo sind die spezifischen Einstellungen, die in der Transformationsdatei geändert werden müssen?
Jay Michaud
2
Um die Funktion für automatische Updates zu beenden, transformieren Sie die MSI, um die Einträge "JU" und "JAVAUPDATE" in der Tabelle "Property" auf 0 zu setzen. Dadurch wird die Ausführung von jusched.exe bei der Anmeldung verhindert und der Benutzer kann keine automatischen Updates konfigurieren.
Evan Anderson
1

Tatsächlich mussten wir uns mit vielen Anwendungen von Drittanbietern (einschließlich Java) und ihren Updatern befassen.

Wir haben uns als Organisation entschieden, Ninite als unsere Lösung zu integrieren . Der Besuch der Website und das Ausführen der kostenlosen Version eignen sich hervorragend für eine einmalige Einrichtung auf einem beliebigen PC. Wenn Sie jedoch auf Ninite Pro umsteigen, erhalten Sie Ninite One als Teil Ihres Abonnements. Ninite One können Sie über die Befehlszeile im Hintergrund ausführen, um eine große Anzahl von Anwendungen bereitzustellen.

Ich werde Ihnen gerne mitteilen, dass wir alle PCs sind, aber insgesamt sind wir mit der Lösung sehr zufrieden.

Ninite One verfügt über Befehlszeilenoptionen zum Deaktivieren automatischer Aktualisierungen und zum Erstellen von Desktop-Verknüpfungen für Aktualisierungen. Das haben wir getan und es funktioniert ziemlich gut. Es erlaubt jedoch nicht mehrere Versionen von Java, wenn dies eine Anforderung ist, die ich nicht glaube (aber ich könnte mich irren, ich habe das nur nicht getestet)

Jason
quelle
1

Ich habe eine Lösung für Sie, obwohl es sich um eine kommerziell verwandte Lösung handelt, aber Sie können PolicyPak verwenden, um ein Gruppenrichtlinienobjekt zu erstellen, das nahezu alle Einstellungen in Java verwaltet. Sie verfügen über eine Testversion und eine Community-Version, die Sie entweder ausprobieren oder in begrenztem Umfang kostenlos nutzen können. PolicyPak lässt sich in die Windows-Gruppenrichtlinie integrieren und ermöglicht es Ihnen, Anwendungskonfigurationseinstellungen für Anwendungen von Drittanbietern wie Java noch effektiver zu verwalten und zu sperren, als die Standardgruppenrichtlinie die verschiedenen Aspekte von Windows sperrt. Der Link zu seinem Java Pak ist hier http://www.policypak.com/products/manage-java-jre-with-group-policy.html und der Link zu den kostenlosen Editionen ist hier http: //www.policypak. de / support-sharing / policypak-trial-community-edition-vollständig-lizenzierte-modi.html .

Brad (Mitarbeiter von PolicyPak)

Brad
quelle
Obwohl dies im Grunde genommen eine Werbung ist, ist sie in Ordnung, da sie die Frage irgendwie beantwortet. Es wäre besser, wenn Sie zeigen würden, wie Sie Ihr Produkt verwenden.
Slm