Hozzáférés engedélyezése

Ha a felhasználó bejelentkezik egy fiókba (a login vagy su paranccsal), akkor a rendszer a felhasználói azonosítót illetve a csoport azonosítót hozzárendeli a felhasználó folyamataihoz. Ezek az azonosítók meghatározzák a folyamat hozzáférési jogait.

A 0 felhasználói azonosítóval rendelkező folyamatok a root felhasználói folyamatok. Ezek a folyamatok általában minden hozzáférési jogosultságot megkapnak. De ha a root felhasználói folyamat végrehajtási jogosultságot kér egy programra, akkor csak abban az esetben kapja meg a jogosultságot, ha a végrehajtás jogosultság legalább egy felhasználónak engedélyezve van.

AIXC hozzáférés-felügyeleti listák hozzáférési jogosultságai

Az információs erőforrás tulajdonosa felelős azért, hogy a hozzáférési jogokat kezelje. Az erőforrásokat jogosultság bitek védik, amelyeket az objektum módja tartalmaz. A jogosultság bitek az objektum tulajdonosának, az objektum csoportjának illetve az egyéb alapértelmezett osztály hozzáférési jogait határozzák meg. Az operációs rendszer háromféle hozzáférési módot (írás, olvasás, végrehajtás) biztosít, amelyeket külön-külön lehet megadni.

A fájlok, könyvtárak, megnevezett csővezetékek és eszközök (különleges fájlok) számára a hozzáférést a rendszer a következőképpen adja meg:

  • A rendszer a hozzáférés-felügyeleti lista (ACL) minden egyes hozzáférés-felügyeleti bejegyzésénél (ACE) összehasonlítja az azonosító listát a folyamat azonosítóival. Ha van egyezés, akkor a folyamat megkapja az adott bejegyzés jogosultságait és korlátozásait. A rendszer az ACL minden jogosultságának és megszorításának kiszámítja a logikai unióját. Ha a kérő folyamat nem felel meg az ACL egyik bejegyzésének sem, akkor az alapértelmezett bejegyzés jogosultságait és megszorításait kapja.
  • Ha a kért hozzáférési mód engedélyezett (benne van a jogosultságok uniójában) és nincs korlátozva (nincs benne a korlátozások uniójában), akkor a rendszer megadja a hozzáférést. Ellenkező esetben a rendszer megtagadja a hozzáférést.

Az ACL azonosító listája csak akkor felel meg egy folyamatnak, ha a lista összes azonosítója megfelel kérő folyamat megfelelő tényleges azonosító típusainak. A USER típusú azonosító akkor megfelelő, ha egyezik a folyamat azonos, tényleges felhasználói azonosítójával, a GROUP típusú pedig ha egyezik a folyamat tényleges csoport azonosítójával vagy valamelyik kiegészítő csoport azonosítójával. Az alábbi azonosító listát tartalmazó ACE esetében:

USER:fred, GROUP:philosophers, GROUP:software_programmer

A folyamat akkor egyezik, ha a tényleges felhasználói azonosítója fred, és a következő csoportok tagja:

philosophers, philanthropists, software_programmer, doc_design

De nem egyezik a folyamat, ha a tényleges felhasználói azonosítója fred, és a következő csoportok tagja:

philosophers, iconoclasts, hardware_developer, graphic_design

Ne feledje, hogy az alábbi azonosító listát tartalmaz ACE mindkét folyamatnak megfelel:

USER:fred, GROUP:philosophers

Más szavakkal az ACE azonosító listájának feltéteivel mind rendelkeznie kell az adott folyamatnak a megfelelő hozzáférés megadásához.

Az objektumok hozzáférés jogosultsági ellenőrzése rendszerhívás szinten kerül végrehajtásra az objektum első hozzáférésekor. Mivel a System V folyamatközi kommunikációs (SVIPC) objektumok állapot nélkül kerülnek hozzáférésre, ezért a rendszer minden hozzáférést ellenőriz. A fájlrendszer nevekkel rendelkező objektumoknál fel kell oldani a neveket a tényleges objektumokra. A nevek feloldhatók relatív (a folyamat munkakönyvtárára) vagy abszolút (a folyamat gyökér könyvtárára) módon. Minden névfeloldás a két könyvtár valamelyikének keresésével kezdődik.

A megítélés szerinti hozzáférés-felügyeleti mechanizmus lehetővé teszi az információs erőforrások hatékony hozzáférés-felügyeletét, és külön adja az információk bizalmasságának és integritásának védelmét. A tulajdonosok által kezelt hozzáférés-felügyeleti mechanizmusok csak annyira hatékonyak, amennyire a felhasználók hatékonnyá teszik. Minden felhasználónak tisztában kell lennie azzal, hogy a hozzáférés jogosultságok hogyan kerülnek kiosztásra vagy tiltásra illetve beállításra.

NFS4 hozzáférés-felügyeleti listák hozzáférési jogosultságai

A hozzáférési jogokat a WRITE_ACL jogosultsággal rendelkező felhasználók felügyelhetik. Az információforrás tulajdonosa mindig rendelkezik WRITE_ACL jogosultsággal. Az NFS4 hozzáférés-felügyeleti listákkal rendelkező fájloknál és könyvtáraknál a hozzáférés engedélyezése a következő módon történik:
  • A rendszer a hozzáférés-felügyeleti bejegyzéseket sorrendben nézi végig, és csak azokat a hozzáférés-felügyeleti bejegyzéseket dolgozza fel, amelyek rendelkeznek a kérővel azonos "ki" (azaz azonosság) jellemzővel. A rendszer nem ellenőrzi a kérő hitelesítési adatait, ha a hozzáférés-felügyeleti bejegyzést a speciális EVERYONE@ azonossággal dolgozza fel.
  • A hozzáférés-felügyeleti bejegyzések addig kerülnek feldolgozásra, amíg a kérő hozzáférésének összes bitje engedélyezésre nem kerül. Ha egy bit már engedélyezve van, akkor a rendszer a későbbi hozzáférés-felügyeleti bejegyzések feldolgozásakor már nem veszi figyelembe.
  • Ha a kérő hozzáférésére vonatkozó bármely bit le van tiltva, akkor a hozzáférést a rendszer megtagadja, és a fennmaradó hozzáférés-felügyeleti bejegyzéseket nem dolgozza fel.
  • Ha a kérő hozzáférésének egyik bitje sincs engedélyezve és nincs több feldolgozásra váró hozzáférés-felügyeleti bejegyzés, akkor a rendszer megtagadja a hozzáférést.

Ha a kért hozzáférést a hozzáférés-felügyeleti bejegyzések megtagadják és a kérést kiadó felhasználó egy felettes vagy root felhasználó, akkor a rendszer általában megadja a hozzáférést. Ne feledje, hogy az objektum tulajdonosa mindig rendelkezik READ_ACL, WRITE_ACL, READ_ATTRIBUTES és WRITE_ATTRIBUTES jogosultsággal. További információk a hozzáférési jogosultságok algoritmusairól: NFS4 hozzáférés-felügyeleti lista.