Een Access Control List (ACL) is de functionaliteit in een besturingssysteem die bepaalt of een gebruiker een bepaalde functionaliteit of informatie mag gebruiken die door dat besturingssysteem wordt beheerd. Het is praktische uitwerking van een beveiligingsmodel zoals Bell-LaPadula , Biba of Clark-Wilson en daarmee de bewaker van de grootheden Exclusiviteit, Integriteit en Beschikbaarheid.

Toegang met een ACL

In Windows heeft ieder object, zoals een bestand of een proces, een Security Descriptor. Deze kan een ACL bevatten. Is er geen ACL, dan heeft iedere gebruiker van het systeem volledige toegang tot het object. Is er wel een ACL maar is deze leeg, dan heeft niemand toegang. Is er wel een ACL en bevat deze informatie over de toegang tot het object, dan gelden de regels zoals vastgelegd in de ACL.

Vraagt een gebruiker toegang dan controleert de Windows Object Manager of dat in de ACL is toegestaan. Het volgt daarbij de weg vanaf het hoogste bovenliggende object tot aan het object waartoe de toegang is gevraagd. Alleen wanneer het onderweg geen belemmerende rechten tegenkomt, wordt uiteindelijk de toegang verleend.

Het instellen van de rechten kan op veel manieren. Microsoft biedt er binnen Windows natuurlijk zelf enkele programma's voor, zoals cacls en icacls. Beide werken vanaf de prompt en kunnen de rechten op bestanden en folders instellen. Icacls is van de twee de nieuwste en meest uitgebreide. Het kan de rechten van een object tonen, bewerken, back-uppen en herstellen. De Duitser [url=http://twitter.com/#!/HelgeKlein]Helge Klein ontwikkelt al meer dan tien jaar aan een alternatief voor deze Microsoft-tools.

SetACL

SetACL bestaat uit een ActiveX/COM-versie en een versie voor gebruik binnen de DOS-prompt. De eerste kan nadat deze geregistreerd is gebruikt worden in scripts en door programmeurs. De tweede zal in het dagelijks beheerwerk goed van pas komen.

SetACL.exe heeft een aantal verplichte en een aantal willekeurige parameters. De verplichte zijn -on voor de Object-naam en -ot voor het Object-type. Daarbij komen de actie-parameters zoals ace waarmee een of meerdere Access Control Entries bewerkt kunnen worden, domain om ACE's voor een domein te kopiëren of verplaatsen en bijvoorbeeld setowner om de eigenaar van een object te benoemen. En nog heel veel meer.

Van alle markten thuis

Helge Klein, de maker van SetACL en het nog te bespreken SetACL Studio, geeft op zijn website een uitgebreide toelichting op het gebruik van SetACL. Vooral ook de talloze voorbeelden die hij daarbij gebruikt maken het gemakkelijk snel de goede syntax te leren.

SetACl ondersteunt het bewerken van de ACL's van bestanden en mappen, Registersleutels, printers, services, netwerkshares en WMI. Het kan zowel lokaal als op een remote systeem gebruikt worden, binnen domeinen en workgroups. Rechten kunnen worden gewijzigd of alleen weergegeven, de eigenaar van een gebruiker of groep kan worden ingesteld, rechten kunnen worden gebackupt of hersteld of tussen gebruikers en domains worden gekopieerd. En nog heel veel meer. Voor ondersteuning is ook het gebruikersforum handig.

Set ACL Studio

Omdat SetACL met elke nieuwe versie die hij maakte functierijker, maar ook complexer werd om te gebruiken, besloot Helge Klein een gemakkelijker te bedienen versie maken. Dat werd SetACL Studio, een volledig grafisch programma met grotendeels, maar niet helemaal dezelfde functionaliteit als SetACL. Zo is het niet mogelijk met SetACL Studio de rechten tussen domeinen te migreren, iets wat met SetACL wel kan.

Maar verder biedt SetACL Studio wat een beheerder nodig heeft om ACL's te gebruiken en te beheren. Opnieuw kunnen wijzigingen worden aangebracht en ongedaan worden gemaakt, werkt SetACL Studio zowel op het lokale en op remote systemen en kunnen de rechten van bestanden, mappen, printers, services, shares, WMI en registersleutels worden beheerd.

Grafische omgeving

Bovendien werkt de grafische interface erg comfortabel. In het Verkenner-achtige venster kunnen links de objecten geselecteerd worden, en rechts de rechten bekeken of aangepast. Daarbij kent SetACL Studio drie niveaus van de weergave van de complexiteit van de ACL: Normal, High en Verbose. Door op een naam te klikken wordt het venster om gebruikers en groepen te selecteren geopend, door op de permissies te klikken kan uit een submenu met mogelijke opties worden gekozen. Rechten verwijderen gaat via de Delete-functie.

Net als SetACL is het vaak nodig daarbij het programma als Administrator te gebruiken. Met SetACL kan dat door de prompt met verhoogde rechten te starten (cmd en dan Ctrl + Shift + Enter) en in SetACL Studio door op Run as Administrator te klikken. Daarna wordt het programma opnieuw opgestart, maar nu met meer rechten.

Prijs en systeemeisen

SetACL Studio is, anders dan SetACL, niet gratis. De download is een volledig functionele 30-dagen versie. Daarna moet de gebruiker, om het programma te kunnen blijven gebruiken, een licentie kopen. Deze kost echter slechts 9,95 euro of 14,95 dollar.

SetACL is uitgebracht onder de LGPL en vrij te gebruiken. Het werkt met iedere recentere versie van Windows. SetACL is net geen 4BM groot en door VirusTotal op malware gecontroleerd en akkoord bevonden. SetACL werkt op iedere versie van Windows Server sinds Windows Server 2000, en iedere desktopversie sinds Windows 2000 Professional.

Ook SetACL Studio is te downloaden en is geschikt voor zowel 32 als 64-bit versies van Windows. SetACL Studio is 3,5 MB groot. Internet Explorer geeft bij de download een reputatiemelding dat dit bestand weinig wordt gedownload en daarom verdacht is. VirusTotal heeft ook SetACL Studio op malware gecontroleerd en ook deze akkoord bevonden.