Uživatelské nástroje

Nástroje pro tento web


progs:rowrights

Řádková práva záznamů - sloupec RowRight

Defaultní práva pro nový záznam

Nastavuje se v menu Ostatní - Vlastní firma - Poznámka (common_nast.LockDef)

Syntaxe

chmod m=red,u+red,g-red,o=red;chown m=u,u=UserName,g=g
  • chmod změna práv
  • chown zmena vlastnika, skupiny, mastera
  • Oddělovač příkazů je ;
  • m master
  • u vlastník
  • g skupina
  • o ostatní
  • , oddelovač

Příkaz chmod

  • = přiřazení
  • + přidání práv
  • - odebrání práv
  • r čtení
  • e editace
  • d mazání

Příkaz chown

  • = přiřazení
  • u aktuální uživatel
  • g primární skupina aktuálního uživatele
  • uživatel
  • skupina

Příklad nastavení v Obisu

MENU: Ostatní → Vlastní firma

RowRights
Create faktury_faktury:chmod O=R;chown G=Admin
#Rozpocet muze editovat jen vlastnik, uvidi ho jen clen skupiny Rozp
Create rozpocty_rozpocty:chmod O=,G=R;chown G=Rozp
Create sklad_prijemky:chmod O=R;chown G=Admin
Create zakazky_zakazky:chmod O=R;chown G=Admin
Create sklad_objed:chmod O=R;chown G=Admin
Lock Faktury_faktury,Ucto_denik:chown M=U;chmod M=R

Po zmeně tohoto nastavení je nutno restarovat obis.

Za RowRights: je možné přidat parametry pro řádková práva

RowRights:MasterLE
...

Kdo má právo měnit ID

  • Admin (UID=0) může vše
  • Skupinu muže změnit vlastník
  • Mastera může nastavit uživatel na sebe v případě že má < RLevel než vlastník
  • Mastera muže přebrat jen ten kdo má RLevel < než současný master
  • Mastera může smazat ten kdo má RLevel < než současný master
  • Jsem-li master, je možné se ho vzdát

V případě že je použit příznak MasterLE je pro porovnávání RLevel použito ⇐ místo <.

Vnitřní struktura

V databazi je uloženo jako INT64.

64-49 48-33 32-17 16-13 12-9 8-5 4-1
GID MID UID GRIGHTS MRIGHTS ORIGHTS URIGHTS

Nevyplněné *ID má hodnotu -1

*RIGHTS jsou po čtyřech bitech uloženy takto:

4 3 2 1
X D E R

(X-Rezerva)

UID 0, GID 0

  • pokud má user UID=0 nevyhodnocují se žádná řádková práva a má právo ke všem záznamům (Admin)
  • pokud user patří do skupiny GID=0, je to jako by byl členem všech skupin
progs/rowrights.txt · Poslední úprava: 2018/04/12 13:42 autor: Karel Petrů