Saya belum membaca apa pun dalam deskripsi masalah Anda yang akan mencegah Anda membuat akun pengguna yang berbeda untuk aplikasi tersebut. Anda kemudian dapat menggunakan izin file sepele untuk mencegah gangguan:
chown app1 /var/lib/myapps/app1
chmod 700 /var/lib/myapps/app1
sudo -u app1 /var/lib/myapps/app1/run.sh
edit
Jika evaluator berjalan sebagai root
maka itu hanya dapat memulai aplikasi melalui sudo
.
Jika evaluator tidak berjalan sebagai root
maka aplikasi yang dipanggilnya (dengan cara normal) dapat diinstal dengan bit SUID (setel ID pengguna) sehingga proses akan berjalan sebagai pengguna yang memiliki file biner dan bukan sebagai pengguna proses evaluator.
Bergantung pada distribusi dan kernel Anda, Anda dapat menggunakan AppArmor atau SELinux untuk menampung aplikasi Anda. Secara keseluruhan menurut saya AppArmor lebih nyaman untuk diatur dan dipelihara. Wiki Ubuntu memiliki beberapa artikel yang menjelaskan konsep dasar.