select UserCanDoOnObject(user_id, perm, acl_id, object_id);
perm određuje pravo. Postojeće permisije mogu se pogledati sa:
strix=# select * from perms order by flag ;
Neke od njih su aliasi tako da se iste dozvole mogu koristiti u razlicitim kontekstima.
Kratko objašnjenje kako su zamišljene osnovne razine dozvola u STRIXu:
- PERM_READ - korisnik s tom dozvolom ima pravo pristupa (u kontekstu kategorije tj. stranice) odnosno pravo čitanja sadržaja (u kontekstu jedinice sadržaja)
- PERM_WRITE ili njezin alias PERM_SUGGEST (alias u kontekstu dozvola na foldere) - korisnik ima pravo predlaganja sadržaja, glasanja, komentiranja, postavljanje pitanja. Predloženi sadržaj se ne objavljuje direktno nego se čeka dozvola administratora stranice koji za taj sadržaj može dozvoliti objavu ili odbiti.
- PERM_AUTHOR - korisnik ima pravo direktne objave svog contenta bez posredstva administratora. Korisnik s tom dozvolom ne može mijenjati tuđi content, ali može svoj.
- PERM_ADMIN - korisnik je administrator stranice.
acl_id su tipovi sadržaja. Mogu se pogledati sa:
strix=# select * from acl_register ;
object_id je identifikator objekta (obično primarni ključ) objekta za koji se provjerava permisija.
Primjer korištenja:
select UserCanDoOnObject(1, 'PERM_ADMIN', 'news', 42 );