Pokud existují v objektu chráněné operace, které může provést jenom oprávněný uživatel, pak objekt také obsahuje kartu "
Oprávnění". Karta obsahuje seznam všech oprávnění daného objektu, je uživatelsky neměnná a je dána typem objektu (např. seznam oprávnění objektu
PmaRoot v kartě "
Oprávnění" bude jiný než seznam oprávnění objektu
PmaPanel v kartě "
Oprávnění").
Tlačítkem
Editace oprávnění lze pro každé oprávnění editovat seznam oprávněných skupin uživatelů, pro které bude chráněná operace povolena.
Díky definování oprávnění v objektech pomocí seznamu oprávněných
skupin uživatelů (nikoliv pomocí konkrétních lokálních nebo síťových uživatelů), lze snadno přidávat nebo odebírat lokální a síťové uživatele. Ti se zařadí do patřičných skupin uživatelů a není nutno dělat změny v konfiguraci jednotlivých objektů. Změna se pak provádí pouze centrálně v kartě "
Uživatelé". Skupiny tak mají logický význam a používají se právě k definici oprávnění (např.
$ADMIN,
$OPER,
GUESTS, atd.).
Přehled systémových uživatelů a skupin uživatelů:
$ANY: systémová skupina uživatelů, představuje jakéhokoliv lokálního nebo síťového uživatele (přihlášený, nepřihlášený).
$ANY_LOCAL: systémová skupina uživatelů, představuje jakéhokoliv lokálního uživatele (přihlášený, nepřihlášený).
$ANY_NET: systémová skupina uživatelů, představuje jakéhokoliv síťového uživatele (přihlášený, nepřihlášený).
$ADMIN: systémová skupina uživatelů, představuje skupinu uživatelů s administrátorskými právy.
$OPER: systémová skupina uživatelů, představuje skupinu uživatelů s právem normální obsluhy.
$NOUSER_LOCAL: systémový uživatel, představuje nepřihlášeného lokálního uživatele.
$NOUSER_NET: systémový uživatel, představuje nepřihlášeného síťového uživatele.
Jsou v zásadě dvě možnosti vzniku požadavku na provedení chráněné operace za běhu aplikace:
- požadavek vznikl lokálně: projde se a porovná se seznam skupin uživatelů v oprávnění s právě přihlášeným lokálním uživatelem
- požadavek vznikl v síti: projde se a porovná se seznam skupin uživatelů v oprávnění se síťovým uživatelem uvedeným v síťovém požadavku na operaci
Ověření oprávnění přihlášeného uživatele k provedení chráněné operace. Vlastní ověření oprávnění (nad objektem
PmUser) probíhá v těchto krocích:
1) Určení, zda požadavek na operaci vznikl lokálně nebo v síti.
2) Určení identifikátoru lokálního uživatele nebo síťového uživatele, který požadavek vyvolal. V případě kombinace síťového uživatele hlídaného jménem a heslem a síťového uživatele hlídaného IP adresou mohou být identifikátory dva.
3) Porovnání identifikátoru uživatele se skupinami uživatelů v oprávnění. Operace je povolena, pokud je uživatel členem některé z uvedených skupin uživatelů. V případě dvou identifikátorů uživatelů se porovnání provádí pro každý zvlášť a stačí, pokud je úspěšný alespoň jeden z nich.
Veškerá porovnání, při hledání výskytu identifikátoru uživatele ve skupinách uživatelů, končí úspěchem ihned po nalezení skupiny uživatelů, ve které je uživatel členem.
Pokud se projde naopak celý seznam a uživatel v něm není nalezen, pak hledání končí neúspěchem a operace není povolena.
Pokud se objevuje v kartě ještě tlačítko
Editace výrazu, pak to znamená, že do karty byly přeneseny i původní VBScript výrazy, které původně sloužily k povolování nebo zakazování operací v objektech (např. VBScript výraz povolující otevřít obraz). Pokud existují, pak je vyhodnocen nejprve daný výraz.
Pokud je výsledkem true, pak vyhodnocování okamžitě končí úspěchem.
Pokud je false, pak se pokračuje v porovnání seznamu skupin uživatelů stejně, jako by tam žádný výraz nebyl.