Pristupova prava v Linuxu

Jan Houstek jan.houstek na mff.cuni.cz
Úterý Prosinec 7 02:06:17 CET 2004


Zdravim.

Opakovane narazim na to, ze tradicni koncept unixovskych prav je na
nektere veci nedostacujici. A bohuzel ani Posix ACL tomu prilis nepomuzou.

Typicky problem je s resenim situace, kdy ma vice lidi pracovat na jednom
smetisti (a nelze to cele resit na vyssi urovni nicim a la CVS). Jeste
horsi je, kdyz na tom smetisti maji mit pristupy jeste nejakou strukturu
(nekdo muze nekde jen cist a jinde nic, jiny muze i zapisovat apod.).
A uplne nejhorsi je takovou strukturu udrzet (uzivatele vytvareji soubory
pomoci nejruznejsich nastroju, kopiruji, presouvaji ...).

Neni problem nastavit prava tak, aby stav v konkretnim okamziku odpovidal
pozadavkum, kdo co muze. Problem je jinde:

* neda se poradne kontrolovat, s jakymi pravy vznikaji nove soubory
  (umask je malo, je to globalni vec a navic rada hyperinteligentnich
  utilit si prava stejne nastavi po svem, napr. pri kopirovani po siti
  na zaklade toho, jaka prava mel original)

* neda se rozumne urcit skupina (oblibene reseni typu sgid na skupinu
  casto konci tim, ze nekdo v dusledku nejake akce sejme bud ten sgid nebo
  zmeni skupinu)

* nikdo jiny nez vlastnik nemuze menit prava a neexistuje ani moznost akce
  "take ownership" (i kdyz to treba lze udelat berlickou typu soubor
   prejmenovat, zkopirovat zpet a prejmenovany smazat)

* soubor si nese prava s sebou a neni zadny zpusob, jak je ovlivnit jeste
  nejakym kontextem, napr. adresare, ve kterem se nachazi (jo, ja vim, ze
  tohle je tezke treba kvuli hardlinkum, ale je to pomerne prirozeny
  pozadavek)

* default ACL ani nic podobneho nic moc neresi (typicky priklad
  neresitelne situace je, kdyz napr. uzivatele presouvaji soubory mezi
  svym home a spolecnym pracovistem)

Urcite mnoha z vas podobne problemy nejsou cizi. Mate nejake zajimave
napady, jak100hoven? Me napada akorat:

* pouzit Netware pro fileserver <g>

* vzdat se modelu user == clovek a prejit na user == projekt, coz je
  mnohdy dost neprakticke

* AFS?

-- Honza Houstek


Další informace o konferenci Linux