title image


Smiley Re: Applet ... Probleme mit java.awt.Robot
Hi



Einem Applet die Berechtigung zum Erstellen eines Robots zu geben könnte gravierende Folgen haben (... "schicke alle 2 Minuten einen Screenshot des Users an folgende Mailadresse...") Mit den Sicherheitseinstellunge des Browsers hat das nichts zu tun - vielmehr geht es um diese Zeile aus der Java-Doku zur "Robot"-Klasse:



Throws: SecurityException - if createRobot permission is not granted



Man muß einem Applet auf jedem System, auf dem es laufen soll von neuem das Recht geben, ein Robot-Objekt zu erstellen. Diese Rechte regelt man (ähnlich wie die Berechtigung für Applets, Dateien des Benutzers zu lesen oder zu schreiben) mit den sogenannten Permissions. Für das Erstellen eines Robots ist eine AWTPermission erforderlich genaugenommen die für die "createRobot"-Aktion. Für eine genaue Anleitung zu Permissions muß ich dich leider auch an das Sun-Tutorial zu Permissions verweisen.



Eigentlich sollte das ungefähr so gehen:

Du startest das Programm \javaVerzeichnis\bin\policytool.exe

(Dort erscheint evtl. eine Meldung, falls noch keine Richtliniendatei existiert)

Dann wählst du "Richtlinieneintrag hinzufügen"

Im folgenden Dialog klickst du auf "Berechtigung hinzufügen"

Im folgenden Dialog wählst du bei "Berechtigung" die "AWTPermission" aus.

Bei "Zielname" wählst du "createRobot" - das gibt's da aber nicht :-( (zumindest nicht bei meiner Java-Version 1.4.0) obwohl es das eigentlich laut Doku geben sollte.





Die Alternative ist, die Persmission-Datei per Hand zu erstellen: Du öffnest die Datei ".java.policy", die sich in deinem Home-Verzischnis befindet (bei Windows z.B. in c:\WINDOWS\). Falls die Datei nicht existiert, erstellst du sie. In beiden Fällen fügst du in diese Datei die Zeilen



grant {

permission java.awt.AWTPermission "createRobot";

};



ein, und hoffst, daß das "createRobot" richtig erkannt wird, obwohl es zwar in der Dokumentation steht, aber im policytool nicht ausgewählt werden kann :-( Blöd, aber einen Versuch ist's Wert.



Danach könnte es funktioneren. (Es sollte funktioneren, aber man weiß ja nie...)



Hab es jetzt leider nicht ausprobiert, aber falls du es nicht hinkriegst, sag nochmal bescheid, dann schau ich mir die Sache mit dem Fehlenden "createRobot"-Eintrag im PolicyTool nochmal genauer an.



Ich hoffe, das hilft dir erstmal weiter.



bye





geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: