
Vad är en Access Control List (ACL)?
En Access Control List (ACL) är en säkerhetsmekanism som används för att reglera vem som har tillgång till ett specifikt system, fil, eller nätverksresurs och vilken typ av åtgärder de kan utföra. ACL spelar en viktig roll i cybersäkerhet genom att säkerställa att endast behöriga användare får tillgång till vissa resurser.
Syftet med ACL
-
Begränsa obehörig åtkomst till filer, mappar, system och nätverk.
-
Anpassa och specificera åtkomstnivåer baserat på användare och deras roller.
-
Förbättra IT-säkerhet genom att minimera risken för obehörig åtkomst.
Hur fungerar en ACL?
En ACL fungerar som en lista av regler där varje regel anger vem som har tillgång till en resurs och vilka åtgärder de får utföra.
Komponenter i en ACL
-
Subjekt – En användare eller en grupp av användare.
-
Objekt – En resurs, till exempel en fil, katalog, databas eller nätverksport.
-
Behörighet – Vilken typ av åtkomst som är tillåten, t.ex. läsning, skrivning, exekvering.
-
Regeltyp – Tillåt (Allow) eller Nekad (Deny).
Exempel på en enkel ACL-tabell
Användare/Grupper | Resurs | Behörighet |
---|---|---|
Admin | /var/log/system.log | Läs, skriv |
User1 | /home/user1/docs | Läs, skriv |
Guest | /home/user1/docs | Nekad |
Typer av ACL
Fil- och katalogbaserad ACL
-
Styr åtkomst till filer och mappar i operativsystem.
-
Exempel:
-
Linux/Unix använder
setfacl
ochgetfacl
. -
Windows använder NTFS-behörigheter.
-
Nätverksbaserad ACL
-
Används för att styra trafiken inom nätverk, särskilt i brandväggar och routrar.
-
Exempel:
-
Tillåta eller blockera trafik på specifika IP-adresser eller portar.
-
Databas-ACL
-
Används för att styra vilka användare som får komma åt en databas.
-
Exempel:
-
MySQL, PostgreSQL och Oracle använder ACL för att styra dataåtkomst.
-
Molnbaserad ACL
-
Används för att styra åtkomst till molntjänster som AWS, Google Cloud och Azure.
-
Exempel:
-
AWS S3-bucket ACL styr vilka användare som kan se, skriva eller radera filer i en lagringsplats.
-
Exempel på ACL-implementering
Linux-filbehörighet med ACL
# Ge user1 läs- och skrivrättigheter till en fil
setfacl -m u:user1:rw example.txt
Cisco-router ACL-konfiguration
# Blockera all trafik från IP 192.168.1.10
access-list 100 deny ip 192.168.1.10 0.0.0.0 any
AWS VPC Nätverks-ACL-exempel
{
"RuleNumber": 100,
"Protocol": "TCP",
"PortRange": {
"From": 80,
"To": 80
},
"CidrBlock": "192.168.1.0/24",
"RuleAction": "ALLOW"
}
ACL vs RBAC (Rollbaserad åtkomstkontroll)
ACL skiljer sig från RBAC (Role-Based Access Control), där behörigheter ges till roller snarare än individer.
Jämförelse | ACL | RBAC |
Behörighetshantering | Direkt tilldelad per användare | Tilldelad via roller |
Administrativ enkelhet | Svårare att hantera i stora system | Lättare att administrera |
Exempel | Tillåt user1 att läsa file.txt |
Tillåt alla i “Administratörsgruppen” att läsa file.txt |
Bästa praxis för ACL-användning
-
Minimera behörigheter: Använd “Principen om minimal åtkomst”.
-
Granska och uppdatera ACL regelbundet: Undvik gamla eller oanvända behörigheter.
-
Logga och övervaka åtkomstförsök: För att upptäcka misstänkta aktiviteter.
Slutsats
En Access Control List (ACL) är en grundläggande och viktig säkerhetsmekanism för att skydda data, nätverk och system från obehörig åtkomst. Genom att implementera ACL korrekt kan organisationer och individer effektivt kontrollera vem som har tillgång till vad och minska risken för säkerhetsincidenter.
SQL Injection: Databasäkerhetshot och försvarsmetoder
1 thought on “Access Control List (ACL) – En detaljerad förklaring på svenska”