ACL

ACL (anglicky access control list, česky doslova seznam pro řízení přístupu) je v oblasti počítačové bezpečnosti seznam oprávnění připojený k nějakému objektu (např. souboru). Seznam určuje, kdo nebo co má povolení přistupovat k objektu a jaké operace s ním může provádět. V typickém ACL specifikuje každý záznam v seznamu uživatele a operaci. Například: Záznam v ACL [Pepa, smazat] pro soubor XYZ dává uživateli Pepa právo smazat soubor XYZ.

U bezpečnostního modelu používajícího ACL systém před provedením každé operace prohledá ACL a nalezne v něm odpovídající záznam, podle kterého rozhodne, zda operace smí být provedena.
Bezpečnostní modely založené na ACL
Jednou ze základních otázek při tvorbě bezpečnostního modelu založeného na ACL je otázka, jak bude možno editovat samotné ACL. Systémy, které používají ACL, se dají klasifikovat do dvou kategorií: volitelné (anglicky discretionary) a povinné (anglicky mandatory).

Systémy s volitelným řízením přístupu umožňují tvůrci či vlastníkovi objektu plně řídit přístup k objektu, včetně například úpravy ACL tak, aby přístup získal kdokoli jiný. U povinného řízení přístupu (též „nevolitelné řízení přístupu“) jsou všechny operace podmíněny i omezeními stanovenými operačním systémem ještě nad rámec omezení definovaných v ACL.

Tradiční systémy ACL stanovují oprávnění uživatelům jednotlivě, takže systém s velikým počtem uživatelů se poněkud obtížně spravuje. Modernějším přístupem pak jsou bezpečnostní modely založené na tzv. rolích, kdy jsou oprávnění přidělována rolím (např. „správce“, „sekretářka“) a uživatelům jsou přidělovány jednotlivé role. Tato alternativa k ACL modelu se označuje jako role-based access control (RBAC).

Systém souborů založený na ACL
Seznam je datová struktura, obvykle tabulka obsahující položky specifikující práva uživatele nebo skupiny k určitým objektům, jako jsou programy, procesy, nebo soubory. Tyto položky známé jako položky pro řízení přístupu (ACE) ve Windows, OpenVMS a Mac OS X operačních systémech. Každý dostupný objekt obsahuje identifikátor v ACL. Specifická přístupová práva rozhodují o povolení nebo oprávnění, jako který uživatel ma právo čtení, zápisu, nebo provedení objektu. V některých provedeních může ACL řídit, zdali může uživatel nebo skupina uživatelů měnit ACL na nějaký objekt. Přestože ACL je standardem POSIX, jeho implementace v různých operačních systémech se výrazně liší. Ochranné koncepty POSIX .1e a .2c byly staženy, když se stal jejich rozsah příliš široký, a práce by nebyla kompletní, ale dobře propracované části definující ACL se široce implementovaly a známe je jako „POSIX ACL“.

Počítačové sítě
U počítačových sítí se jako ACL označuje seznam pravidel popisující porty nebo (síťové) démony, které jsou dostupné na počítači (či jiném zařízení na síťové vrstvě), a u každé seznam zařízení a sítí, které mohou tuto službu používat. ACL mohou být jak na konkrétních serverech, tak i na routerech. Zpravidla existují oddělená ACL pro příchozí a odchozí data. Viz též firewall.