Witam
Z tego co mi wiadomo w Linuxie mamy 2 rodzaje uprzywilejowania procesów: uprzywilejowany i nieuprzywilejowany (UID lub EUID inny niż 0 (root) )
W związku z tym moje pytanie.
Czy istnieje w systemach Linuksowych możliwość żeby nieuprzywilejowanej aplikacji tzn takiej która nie działa z uprawnieniami użytkownika root nadać prawo tylko do montowania systemów plików?
Na tej stronie http://man7.org/linux/man-pages/man7/capabilities.7.html czytamy:
Starting with kernel 2.2, Linux divides the privileges traditionally associated with superuser into distinct units, known as capabilities,which can be independently enabled and disabled. Capabilities are a per-thread attribute.
Jak ustawić sobie konkretne uprawnienia?
Nie odnalazłem dedykotwanej funkcji typu SetCapabilityProcess()
ale mam coś takiego:
prctl() is called with a first argument describing what to do (with values defined in <linux/prctl.h>), and further arguments with a significance depending on the first one.
#include <sys/prctl.h>
int prctl(int option, unsigned long arg2, unsigned long arg3, unsigned long arg4, unsigned long arg5);
====Przyklad====Example==============
prctl(PR_CAPBSET_READ, CAP_SETUID, 0, 0, 0);
Czy ta funkcja służy do tego żeby ustawić procesowi żądane "zdolności"(ang. capabilities) ?
Nie ma jakiejś przyjaźniejszej? ;)