Как установить права доступа к файлу для внешнего процесса - PullRequest
0 голосов
/ 10 января 2019

Я запускаю Python из Java:

String cmd = "python3";
String code = "<Some python code, that can access fs>";

ProcessBuilder pb = new ProcessBuilder(cmd)
        .directory(new File("<Permitted directory>"));

Process p = pb.start();
PrintStream ps = new PrintStream(p.getOutputStream());
ps.println(code);
ps.close();
p.waitFor();

Моя проблема в том, что код python может записывать в файловую систему, поэтому он может ее испортить. Процесс Python должен иметь разрешение только для определенного каталога - рабочего каталога.

Как этого добиться?

Обратите внимание, что из Java я могу вызывать несколько процессов Python в разных каталогах, поэтому каждый процесс Python должен быть разрешен для собственного каталога.

...