Java wird prinzipiel in einer Sandbox im Web ausgeliefert, um Schadcode zu unterdrücken. Leider ist diese Sandbox manchmal sehr unpraktisch, wenn es zum Beispiel darum geht Files über ein Applet zu laden und auszuführen. Ebenso ist es sehr wichtig die Sandbox zu umgehen, falls man Netzwerkanwendungen erstellen will, welche über den aufgerufenen Webhost hinaus gehen.
Um ein Applet zu erstellen, muss zuerst ein .JAR datei erstellt werden. Bei einer .JAR Datei handelt es sich um eine komprimierten Container, in dem für gewöhnlich manifest Dateien, Resourcen und .java Klassen enthalten sind. Die .JAR Datei kann ebenso als ausführbare Datei genutzt werden, sofern eine für das Programm aktuelle Runtime Enviroment installiert ist. Um die Textdatei, welche zuvor zu .java umbenannt wurde zu Kompilieren und anschließend zu komprimieren wird die Binary javac und jar benötigt. Beide Programme liegen im %JAVAPATH%\bin verzeichnis. Damit sie die Klasse .java kompilieren können, müssen sie javac folgendermaßen aufrufen: javac .java
Diese Prozess kompiliert die Klasse, welche daraufhin als .JAR exportiert werden kann. Um die Datei als .JAR zu packen, müssen sie das Programm “jar” mit folgenderweiße aufrufen: jar cf <Klassenname>.jar Klassenname.java
Nachdem sie die benötigte .JAR Datei erstellt haben, können wir auch schon ein Zertifikat für diese Datei generieren. Sun bietet auch hierfür ein Programm an, welches ebenso unter %JAVAPATH%\bin vorhanden ist. Dieses Zertifikat können sie nun unter folgendem Befehl aufrufen: keytool -genkey -keystore meinTresor -alias tollerAlias
Sie haben nun einen Prozess vordefiniert, mit welchem sie das selbstsignierte Zertifikat erstellen können. Dies ist mit folgendem Befehl möglich: keytool -selfcert -keystore meinTresor -alias tollerAlias
Nun sind sie bereit die im Anfang des Tutorials erstellte .JAR zu signieren. Dies ist nun möglich mit dem von Sun mitgelieferten Programm jarsigner. Dieses Programm dient ausschlißelich zum signieren von .JAR files mit einem Zertifikat. Der Aufruf ist spielend einfach und lautet: jarsigner -keystore meinTresor <Klassenname>.jar tollerAlias
Letztendlich sind sie bereit das .JAR in ihrer Webseite zu implementieren. Dies ist möglich mit folgender anweisung.
<applet id=”appletID” archive=”<Klassenname>.jar” code=”Mainclass” align=”baseline” width=”200″ height=”200″></applet>
Wichtig ist zu wissen, dass der Benutzer nun mein Aufruf eine Warnung bekommt, dass dieses Programm mit einem ungültigen Zeritifkat ausgeliefert wird. Dies ist nötig, um den Benutzer hinzuweisen, dass unter umständigen auf Prozesse zugegriffen werden, wofür er normalerweise keine Berechtigung geben würde. Selbstverständlich können sie die ganzen Applets auch in dem vom Sun entwickelten AppletViewer testen.
Kommentar verfassen