Изолирование выполнения функции в Java - PullRequest
0 голосов
/ 07 октября 2018

У меня есть этот код:

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, переданным в нее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...