Ongelma on tämä: miten käyttäjät voisivat Unixissa antaa käyttöoikeuden haluamiinssa tiedostoihin haluamalleen ihmisjoukolle niin, että:
Unixissa on sellainen hyvä valinta, että aina, jos haluaa määrittää käyttöoikeuksia jollekulle muulle kuin tiedoston tekijälle muttei kuitenkaan kaikille, on perustettava ryhmä, joka määrittää kyseisen ihmisjoukon. Tämä on kätevää, koska myöhemmin tämän ryhmän kautta voi päivittää, ketkä saavat roolipohjaisen käyttöoikeuden tiettyihin tiedostoihin, ilman että itse tiedostoja tarvitsee käydä läpi.
Ongelma on kuitenkin se, että ryhmiä ei pysty luomaan eikä muokkaamaan kukaan muu kuin järjestelmän ylläpitäjä. Tarvitaan siis automaatti, jolla /etc/group luodaan, jotta käyttäjät voivat itse huolehtia ylläpidosta.
Tällöin ilmeinen ratkaisu on, että kukin voi perustaa uusia ryhmiä, ottaa niihin jäseniä ja luovuttaa ryhmän ylläpito-oikeuksia eteenpäin. Ryhmä vanhenee, kun kaikki sen jäsenet ovat vanhentuneet. Ongelmatilanteissa otetaan yhteys ryhmän ylläpitäjiin. Tämä on hyvin perinteinen tapa: jokainen porras määrittää tarkalleen, mitä oikeuksia jakaa eteenpäin. Mutta:
Näiden huolten vuoksi tein mallin, joka tekee mahdollisimman helpoksi roolivaihdokset. Ryhmällä ei ole ylläpitäjää, vaan vastuuhenkilö. Ryhmä vanhenee heti, kun vastuuhenkilö vanhenee (tästä tietysti varoitetaan ryhmän jäseniä). Vastuuhenkilöksi saa ryhtyä kuka vain ryhmän jäsen, mutta vastuuhenkilöydestä pääsee eroon vain, jos joku muu ottaa sen. Jäseniä pystyy lisäämään kuka vain ryhmän jäsen (lisääjä kuitenkin merkitään muistiin myöhempää selvittelyä ennakoiden). Nyt:
Usein näiden järjestelmien ongelma on se, että teknisen käyttöoikeuden mukana ei välity tieto siitä, mitä sillä saa tehdä (kaikki mahdollinen ei läheskään aina ole sallittua). Sallivat järjestelmät korostavat käyttäjävalistuksen tärkeyttä samalla, kun ovat vähemmän tiellä ja vähentävät byrokratiaa: profit.
Vähän googlailemalla löysin muutamia muita lähestymistapoja samaan ongelmaan, käytännössä juuri tuo mitä kutsun "ilmeiseksi ratkaisuksi":
Tajusin muuten juuri, että tämän anarkistisen käyttäjähallinnon pystyy toteuttamaan suoraan /etc/group:lla ilman SQL-backendia, koska vastuuhenkilöitä on ryhmässä vain yksi (joten vastuuhenkilö on ryhmän ensimmäinen jäsen). Mahtavaa! Tämä ei ollut tullut mieleen, koska kielitieteen laitoksella piti joka tapauksessa propagoida käyttäjätiedot eri paikkoihin, jolloin Unixin natiivien tietovarastojen käytöstä ei ollut erityisempää hyötyä. (Tälle on nyt toteutus, katso nettipäiväkirja 19.06.2014.)