Autorizace a přístupová práva

Přístupový kontrolní mechanizmus je klíčovou součástí každé pokročilejší aplikace. Řídí, kteří uživatelé mohou přistupovat k jednotlivým zdrojům, které funkce mohou využívat apod. Měl by ochránit aplikaci před neautorizovaným prohlížením, změnami nebo kopírováním dat. [20] v tomto ohledu rozlišuje pojmy „řízení přístupu“ a „autorizace“:

Autorizace

Při autorizaci se ověřuje, zda má uživatel dostatečná oprávnění pro přístup k určitému souboru či pro provedené určité akce. Tato kontrola se provádí na základě členství uživatele v různých uživatelských skupinách, přístupovch seznamech apod. Neboli se předpokládá předchozí úspěšná autentizace, na jejíž spolehlivosti je autorizace plně závislá.

Řízení přístupu

Naproti tomu řízení přístupu je mnohem obecnější. Zahrnuje omezení založená například na aktuálním čase, IP adrese či doméně klienta, typu šifrování datového přenosu, počtu přihlášení či dotazů uživatele za poslední den apod.

[20] definuje tři nejpoužívanější modely řízení přístupu, které se ale v praxi navzájem často kombinují: model volný, direktivní a založený na rolích.

Volné řízení přístupu

O přístupu ke zdroji či informaci je rozhodováno na základě identity uživatele a/nebo jeho členství v některé uživatelské skupině, tedy na základě autentizačních údajů, které uživatel předtím poskytl (uživatelské jméno, heslo, hardwarový klíč apod.). Důležitým prvkem je, že každý vlastník zdroje či informace sám rozhoduje o přidělení přístupových práv ostatním uživatelům zcela podle vlastního uvážení. Nevýhodou je, že administrátoři systému nemohou centrálně a jednotně řídit přístup ke všem informacím či souborem uloženým na serveru. Tento mechanizmus je běžný například v unixových filesystémech. Volné řízení přístupu se vyznačuje zpravidla některými z následujících vlastností:

Řízení přístupu založené na úrovních citlivosti

Rozhodování o přidělení práv nezávisí na libovůli jednotlivých uživatelů. Každý uživatel je zařazen na určitou úroveň důvěryhodnosti, která mu byla přidělena administrátorem. Zdrojům a informacím se také přidělují různé úrovně citlivosti. Při přístupu uživatele k některému objektu se úroveň jeho důvěryhodnosti porovnává s úrovní citlivosti daného objektu. O povolení či zamítnutí přístupu je poté rozhodnuto na základě tohoto porovnání. Popsaný mechanizmus se používá v aplikacích extrémně náročných na zabezpečení, například v armádních systémech. Jsou pro něj typické některé z následujících vlastností:

Řízení přístupu založené na rolích

Přístup ke zdrojům a informacím je založen na rolích a odpovědnostech každého uživatele v rámci organizace nebo uživatelské základny. O přidělení rolí rozhoduje administrátor aplikace. Ten musí být schopen správně rozlišit potřeby jednotlivých rolí a jejich náročnost na zdroje. Zároveň by měl mít na paměti zásadu „Least Privilege“ neboli co nejmenších oprávnění. Každý uživatel by měl mít v aplikaci přístup jen a pouze k těm částem, které skutečně potřebuje využívat, nikoliv k těm, které by někdy potenciálně mohl využít. Pro řízení přístupu založené na rolích jsou typické některé z následujících vlastností: