Access control list

Access Control List (ACL), eller adgangskontrolliste, er en tabel og/eller liste der indeholder adgangsrettigheder til fx objekter eller netværksadgange til services.

Implementationer 
Mange forskellige systemformer implementerer ACLs eller har en historisk implementation.

Filsystem-ACLs 
En filsystem-ACL er en tabel og/eller liste der indeholder adgangsrettigheder til en computers styresystems programmer/filer for hver enkelt bruger. Den styrer hvad en bruger har rettigheder til at gøre og ikke gøre for bestemte objekter, såsom filkategorier eller individuelle filer.
Hvert objekt har sikkerhedsattributter der angiver en adgangskontrolliste. I en typisk ACL angives et emne, og en operation, for eksempel, hvis en fil har en ACL der indeholder (Lisa, slet) vil dette give Lisa rettigheder til at slette filen.

Listen indeholder en post for hvert systembruger med adgangsrettigheder. Den mest almindelige brug omfatter rettigheder til at læse en fil, eller vise en liste over filer i en mappe, at skrive til en fil eller flere filer, og til at køre/afvikle filer (hvis den er en eksekverbar fil eller et program).

Når en bruger prøver at udføre en operation på en fil i en ACL-baseret sikkerhedsmodel, kontrollerer styresystemet først ACL, for at afgøre om den ønskede handling er tilladt, altså om brugeren har rettigheder.

Filsystem-ACL findes i Microsoft Windows NT, OpenVMS, Unix-lignende og MacOS styresystemer.

De fleste Unix og Unix-lignende styresystemer (fx Linux,
BSD eller Solaris) understøtter POSIX.1e ACLs, baseret på en tidligere POSIX udkast som blev trukket tilbage 1997. Mange af dem - fx AIX, FreeBSD,
Mac OS X begyndende med version 10.4 ("Tiger") eller Solaris med ZFS filesystemet,
understøtter NFSv4-ACLs, som er en del af NFSv4 standarden. Der er to eksperimentelle implementeringer af NFSv4-ACLs for Linux: NFSv4-ACLs understøttelse af Ext3-filesystemet
og Richacls,
som giver NFSv4 ACLs understøttelse for Ext4-filesystemet.

PRIMOS understøttede ACLs så tidligt som 1984.

Datanet-ACLs 
På nogle typer af proprietær computer-hardware (især routere, netværksswitche, multilayer switche), giver en ACL mulighed for at lave regler med fx: kilde-ethernet-adresser, destination-ethernet-adresser, ethernet-protokoller, kilde-ip-adresser, destination-ip-adresser, internetprotokoller, ip-porte, applikationsprotokol (i fx NG-firewalls og lag-7 switche) med formålet at styre datanetadgangen til en service.

En ACL primære formål er at afvise eller tillade adgang via såkaldte permit & deny statements, men kan også blive udnyttet til andre formål f.eks. udpensle hvilke ip-adresser som skal nattes. En ACL er kort sagt en match mekanisme.

Datanet access-lister kan blive brugt til en lang række ting, nogle er listet nedenfor:
 Adgangskontrol
 Network address translation (NAT)
 Quality of Service (QoS)
 Demand dial Routing
 Policy Routing
 Route filtering
 Virtual private network (VPN)
 Osv.

ACL på Cisco IOS 
ACL'er er tilknyttet i indgående(inbound) eller udgående(outbound) retning. Listen bliver læst fra top til bund men stopper ved første match der passer til den trafik der bliver gennemset. Der er et forudbestemt "deny" i bunden af listen, hvilket vil sige, at hvis der ikke er nogle regler der matcher den pågældende trafik, vil trafikken blive afvist.

Ved at sætte en ACL i indgående retning på en router formindsker dette processor-belastningen, fordi en pakke der potentielt skal afvises bliver afvist inden routeren bruger ressourcer på at route pakken.

Standard og udvidet ACL 
En standard ACL er forholdsvis begrænset i funktionalitet men er påkrævet i nogle tilfælde.
 Matcher på kilde adresser
 Benytter mindre ressourcer end udvidet ACL
 Normalt ikke brugt til sikkerhed da det ikke er hensigtsmæssigt at matche på source adresser, det er dog nødvendigt vis man skal natte
En udvidet ACL også kaldet extended ACL har flere funktioner så som tidligere nævnte eksempel i starten af afsnittet for Datanet-ACLs.
 Match baseret på Source/destination adresser, Protokoller, source/destination port nr.
 Kræver flere ressourcer end standard ACL
 Mest brugt til sikkerhed
Refleksive ACL tillader retur adgang for trafik som er efterspurgt internt.

For IPv6 har man næsten samme virke måde dog findes der kun extended ACL og der tilføjes 2 forudbestemte tillad regler i bunden ud over den forudbestemte afvis.

I bunden af en IPv6 ACL findes tillad "Neighbor Discovery - Neighbor Advertisement" & "Neighbor Discovery - Neighbor Solicitation" samt afvis alt ikke tilladt trafik (på samme måde som ved IPv4).

Sammenligning med RBAC 
Alternativet til ACL-modellen er role-based access control (RBAC) modellen.

Kilder/referencer

Yderligere læsning 

 
 
 
 
 
 
 
 

Computer adgangskontrol
It-sikkerhed