RSBAC Requests

Een request is een abstractie van een bewerking die voor meerdere target types kan worden gebruikt. Als voorbeeld R_READ_OPEN: dit kan een request zijn voor een FILE, FIFO, DEV of IPC object. Stel, dat een proces een stukje shared memory wil gaan gebruiken - om toegang te krijgen tot dat geheugen wordt de systeem-aanroep 'shmat()' uitgevoerd. In RSBAC jargon vertaalt zich dat naar "Een request R_READ_OPEN op een target type IPC". Hetzelfde request type kan ook worden gezonden naar een target type FILE: de AEF heeft dan denkelijk een aanroep van de system call 'open()' onderschept.

Welke systemcall's er precies worden onderschept en welke objectklassen daar bij (kunnen) horen kunt u na het installeren van RSBAC terug vinden in het bestand /usr/src/linux/Documentation/rsbac/html/targetsrequests.htm. De installatie van RSBAC komt de volgende keer aan de orde. Ik volsta daarom met een aantal voorbeelden, zodat u zich een beeld kunt vormen van het soort systeemopdrachten wat RSBAC onderschept.

R_CHANGE_OWNER: zet het UID voor dit object
R_DELETE: verwijder dit object
R_READ_OPEN: open dit object voor lezen
R_SEND_SIGNAL: stuur een signaal naar dit object
R_CLONE: fork een process
R_LINK_HARD: maak een hardlink aan
R_MOUNT: mount een device op een directory
R_REMOVE_FROM_KERNEL: verwijder een module uit de kernel