IPC user -> root process
Verfasst: Montag 9. Oktober 2017, 07:36
Ich möchte ein Programm erstellen, das folgendes tuen soll:
1.der superuser erstellt einen Prozess, der auf "requests" von anderen Programmen wartet
2.ein user schickt einen request, worauf der superuser-Prozess antwortet
3.er antwortet indem er aus einer Datei den für den user relevanten teil zurücksendet.
So teil 1 und 2 ist ja nicht schwer,
1.Dazu wollte ich eine MessageQueue aus dem sysv_ipc packet verwenden,
also erstelle ich eine Queue, und sorge dafr das beide Prozesse den Key bekommen.
2.Dann sendet der user den request mit MessageQueue.send(...) und der superuser empfängt ihn mit MQ.receive()
Aber wie kann man es hinbekommen, dass nicht ein anderer User auch noch MQ.receive() ausführt und dann einige requests umgeleitet werden,
und wie macht man das so, dass der user sich authentifizieren kann?
Und die letzte Frage ist: sollte man für soetwas IPC-MessageQueue verwenden, oder eher sockets oder shared memory?
1.der superuser erstellt einen Prozess, der auf "requests" von anderen Programmen wartet
2.ein user schickt einen request, worauf der superuser-Prozess antwortet
3.er antwortet indem er aus einer Datei den für den user relevanten teil zurücksendet.
So teil 1 und 2 ist ja nicht schwer,
1.Dazu wollte ich eine MessageQueue aus dem sysv_ipc packet verwenden,
also erstelle ich eine Queue, und sorge dafr das beide Prozesse den Key bekommen.
2.Dann sendet der user den request mit MessageQueue.send(...) und der superuser empfängt ihn mit MQ.receive()
Aber wie kann man es hinbekommen, dass nicht ein anderer User auch noch MQ.receive() ausführt und dann einige requests umgeleitet werden,
und wie macht man das so, dass der user sich authentifizieren kann?
Und die letzte Frage ist: sollte man für soetwas IPC-MessageQueue verwenden, oder eher sockets oder shared memory?