STRIX
UserCanDoOnObject: Revision 5

Prava pristupa i dozvole za sadržaje

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 ;

flag mark
1 PERM_READ
2 PERM_WRITE
2 PERM_SUGGEST
4 PERM_AUTHOR
8 PERM_ADMIN
8 PERM_OWN

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:

  1. PERM_READ - korisnik s tom dozvolom ima pravo pristupa (u kontekstu kategorije tj. stranice) odnosno pravo čitanja sadržaja (u kontekstu jedinice sadržaja)
  2. 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.
  3. 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.
  4. PERM_ADMIN - korisnik je administrator stranice.

acl_id su tipovi sadržaja. Mogu se pogledati sa:

 strix=# select * from acl_register ;

id table_name id_col_name detail_col_name description
grup grupe id naziv Group
site site id naziv Site
kats kategorija id naziv Category
file document id title File
news news id title Vijest
faq faq_qanda id question FAQ
foru f_topics id title Forum
cale calendar id title Calendar

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 );