Funkcia upraví definície práv pre EDA. Práva sa definujú vo forme kombinácií používateľ - maska názvov počítačov - maska vektorov - typ práva. Nové práva sú automaticky aplikované vo všetkých bežiacich EDA procesoch.

Deklarácia:

%EDA_SetRights(
   RECORD in _rights,
   INT out _errorCode
 );

Parametre


ParameterDátový typTypPopis
1rightsRECORDINŠtruktúra práv.
2errorCodeINTOUTNávratový kód.

Popis štruktúry práv:


ParameterDátový typPrednastavená hodnotaPopis
1userNameTEXT (32)
Meno užívateľa, pre ktorého sa právo vzťahuje.
2vectorMask TEXT (64) 
Maska vektora/vektorov, pre ktoré sa právo vzťahuje.
3rightTypeINT
Typ práva.
4activateBOOL
Príznak, či sa má právo založiť alebo zrušiť.
5computerMaskTEXT (256)*Maska názvov počítačov, pre ktoré sa právo vzťahuje.
6priorityINT0Priorita práva.


V maskách sú podporené symboly * a %, ktoré predstavujú ľubovoľnú postupnosť znakov a znak ?, ktorý predstavuje ľubovoľný znak.

Pre jedného používateľa je možné definovať viacero práv na vektory. Poradie, v akom sú práva používateľa vyhodnocované je možné definovať pomocou priority - právo s vyššou prioritou má prednosť. Ak majú viaceré práva jedného používateľa rovnakú prioritu, sú vyhodnocované v zostupnom poradí podľa typu práva. Ak je aj typ práva rovnaký, tak poradie vyhodnotenia je nedefinované!

Príklad

Používateľ anonymous má mať prístup na zápis do vektorov s maskou Public.*, okrem vektorov s maskou Public.*READ_ONLY*, ktoré má právo len čítať. Ku všetkým ostatným vektorom nemá prístup.
Jeho práva je potom možné definovať nasledovnou štruktúrou:

RiadokuserNamevectorMaskrightTypeactivatecomputerMaskpriority
1anonymousPublic.*READ_ONLY*Right_Read@TRUE*2
2anonymousPublic.*Right_Write@TRUE*1
3anonymous*Right_Deny@TRUE*0

V prípade, že predvolené právo pre prístup k vektorom (EDA_SetDefaultRights) je Right_Deny, je možné posledný riadok vynechať.

Napíšte komentár