У меня есть этот код:
JarByteClassloader loader = new JarByteClassloader(jar);
Class c = loader.loadClass(classToLoad);
Thread.currentThread().setContextClassLoader(loader);
JarEntryObject jarEntry = (JarEntryObject) c.newInstance();
Response response = jarEntry.execute(module);
Возможно ли:
- Ограничить доступ к коду внутри функции
execute()
, например коду внутри прилагаемойфункция не должна иметь возможность доступа к другим объектам из других загруженных JarEntryObject
(изоляция) - и не должна иметь возможность доступа, чтения или изменения переменных приложения и системы
- Не должно бытьвозможность создания процесса / потока, который будет создавать сетевые порты
Так что функция execute
может получить доступ только к созданным ей объектам и объекту module
, переданным в нее.