Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

security problem with Java ScriptEngine

I just started to use the Java ScriptEngine to do little extensions to my Application then i noticed that i can import all the java classes in the script and use them without restrictions. Is there a way to specify what classes a script can use? I dont want them to do things like java.lang.System.exit(1);

like image 547
lucidd Avatar asked Dec 10 '09 01:12

lucidd


3 Answers

Well, you seem to need to learn about the Java SecurityManager. That's a pretty large topic, you might want to read up on it and then post a more specific question if you have trouble making it work for you.

like image 112
bmargulies Avatar answered Nov 10 '22 04:11

bmargulies


Use the Java Security Manager. Refer this answer for an example.

like image 1
instantsetsuna Avatar answered Nov 10 '22 03:11

instantsetsuna


I solved this by putting "importPackage = null" on the top of all scripts, it seems to work but Im not sure if this hack can be avoided.

like image 1
tamat Avatar answered Nov 10 '22 03:11

tamat