Access Control List (ACL) (Italiano)
Cos’è un Access Control List
Un Access Control List (ACL) contiene regole che concedono o negano l’accesso a determinati ambienti digitali. Esistono due tipi di ACL:
- ACL del Filesystem AC filtra l’accesso ai file e / o alle directory. Le ACL del filesystem indicano ai sistemi operativi quali utenti possono accedere al sistema e quali privilegi sono consentiti agli utenti.
- Rete ACL AC filtra l’accesso alla rete., Le ACL di rete indicano ai router e agli switch quale tipo di traffico può accedere alla rete e quale attività è consentita.
In origine, gli ACL erano l’unico modo per ottenere la protezione del firewall. Oggi, ci sono molti tipi di firewall e alternative alle ACL. Tuttavia, le organizzazioni continuano a utilizzare ACL in combinazione con tecnologie come le reti private virtuali (VPN) che specificano quale traffico deve essere crittografato e trasferito attraverso un tunnel VPN.,
Motivi per utilizzare un ACL:
- flusso di Traffico control
- Limitato il traffico di rete per migliorare le prestazioni di rete
- Un livello di sicurezza per l’accesso alla rete, specificando quali aree del server/rete/servizio può essere accessibile da parte di un utente, che non può
- Granulare di monitoraggio del traffico in uscita e in entrata nel sistema
Come ACL Funziona
Un filesystem ACL è una tabella che informa di un sistema operativo del computer e dei privilegi di accesso di un utente a un sistema di oggetti, tra cui un singolo file o una directory di file., Ogni oggetto ha una proprietà di sicurezza che lo collega al suo elenco di controllo di accesso. L’elenco contiene una voce per ogni utente con diritti di accesso al sistema.
I privilegi tipici includono il diritto di leggere un singolo file (o tutti i file) in una directory, di eseguire il file o di scrivere sul file o sui file. I sistemi operativi che utilizzano un ACL includono, ad esempio, Microsoft Windows NT/2000, Netware di Novell, OpenVMS di Digital e sistemi basati su UNIX.,
Quando un utente richiede un oggetto in un modello di sicurezza basato su ACL, il sistema operativo studia l’ACL per una voce pertinente e vede se l’operazione richiesta è consentita.
Gli ACL di rete sono installati in router o switch, dove fungono da filtri di traffico. Ogni ACL di rete contiene regole predefinite che controllano quali pacchetti o aggiornamenti di routing sono consentiti o negato l’accesso a una rete.
Router e switch con ACL funzionano come filtri di pacchetti che trasferiscono o negano pacchetti in base a criteri di filtraggio., Come dispositivo di livello 3, un router con filtraggio dei pacchetti utilizza regole per verificare se il traffico deve essere consentito o negato l’accesso. Decide questo in base agli indirizzi IP di origine e di destinazione, alla porta di destinazione e alla porta di origine e alla procedura ufficiale del pacchetto.
Tipi di elenchi di controllo degli accessi
Gli elenchi di controllo degli accessi possono essere affrontati in relazione a due categorie principali:
ACL standard
Un elenco di accesso sviluppato esclusivamente utilizzando l’indirizzo IP di origine. Questi elenchi di controllo degli accessi consentono o bloccano l’intera suite di protocolli., Non distinguono tra traffico IP come UDP, TCP e HTTPS. Usano i numeri 1-99 o 1300-1999 in modo che il router possa riconoscere l’indirizzo come indirizzo IP di origine.
ACL esteso
Un access-list che è ampiamente utilizzato in quanto può differenziare il traffico IP. Utilizza sia gli indirizzi IP di origine che di destinazione e i numeri di porta per dare un senso al traffico IP. È inoltre possibile specificare quale traffico IP deve essere consentito o negato. Usano i numeri 100-199 e 2000-2699.
ACL Linux vs., Windows ACL
Linux offre la flessibilità di apportare modifiche al kernel, che non possono essere fatte con Windows. Tuttavia, poiché è possibile apportare modifiche al kernel a Linux, potrebbe essere necessario un know-how specializzato per mantenere l’ambiente di produzione.
Windows offre il vantaggio di una piattaforma stabile, ma non è flessibile come Linux. In relazione all’integrazione delle applicazioni, Windows è più facile di Linux.
Un utente può impostare meccanismi di controllo degli accessi in una finestra di Windows senza aggiungere software.
In termini di patch, Microsoft è l’unica fonte per emettere patch di Windows., Con Linux, è possibile scegliere di attendere fino a quando un provider Linux commerciale rilascia una patch o si può andare con un’entità open-source per le patch.
Best practice ACL
Quando si configurano le ACL, è necessario attenersi ad alcune best practice per garantire che la sicurezza sia limitata e che il traffico sospetto sia bloccato:
1. ACL everywhere
Gli ACL vengono applicati su ogni interfaccia, in quasi tutte le apparecchiature di sicurezza o di routing. Questo è adatto in quanto non è possibile avere le stesse regole per le interfacce e le interfacce rivolte verso l’esterno che formano la rete del campus., Tuttavia, le interfacce sono simili e non si desidera che alcune siano protette da ACL e alcune esposte.
La pratica di un ACL su tutte le interfacce è essenziale per le ACL in entrata, in particolare le regole che decidono quale indirizzo può trasferire i dati nella rete. Queste sono le regole che fanno una notevole differenza.
2. ACL in ordine
In quasi tutti i casi, il motore far rispettare l’ACL inizia in alto e si sposta verso il basso l’elenco. Ciò ha implicazioni per capire cosa farà un ACL con un flusso di dati specifico.,
Uno dei motivi per cui le organizzazioni adottano ACL è che hanno un overhead computazionale inferiore rispetto ai firewall stateful e che funzionano ad alta velocità. Questo è essenziale quando si tenta di implementare la sicurezza per interfacce di rete veloci. Tuttavia, più a lungo un pacchetto rimane nel sistema, mentre viene esaminato rispetto alle regole nell’ACL, più lenta è la prestazione.
Il trucco è mettere le regole che ci si aspetta verranno attivate nella parte superiore dell’ACL. Lavorare dal generale allo specifico, garantendo nel contempo che le regole siano raggruppate logicamente., Dovresti sapere che ogni pacchetto verrà agito dalla regola iniziale che innesca, potresti finire per passare un pacchetto tramite una regola quando intendi bloccarlo tramite un’altra. Considerare come si desidera che la catena di eventi accada, in particolare quando si aggiungono nuove regole.
3. Documenta il tuo lavoro
Quando aggiungi le regole ACL, documenta perché le stai aggiungendo, cosa sono destinate a fare e quando le hai aggiunte.
Non è necessario avere un commento per regola. Puoi fare un commento per un blocco di regole, una spiegazione complessa per una singola regola o una combinazione di entrambi gli approcci.,
Gli sviluppatori dovrebbero assicurarsi che le regole attuali siano documentate, quindi nessuno deve indovinare perché una regola è lì.
RBAC vs ACL
Gli sviluppatori possono utilizzare sistemi Role-based Access List (RBAC) per controllare la sicurezza a livello granulare. Piuttosto che enfatizzare l’identità dell’utente e determinare se dovrebbe essere consentito di vedere qualcosa nell’applicazione, RBAC governa la sicurezza in base al ruolo dell’utente all’interno di un’organizzazione.
Ad esempio, piuttosto che dare il permesso a John Smith, un architetto di New York, RBAC avrebbe dato il permesso di un ruolo per gli Stati Uniti., architetto. John Smith potrebbe essere uno dei tanti utenti con quel ruolo. Pertanto, RBAC garantisce alle persone normative che solo utenti specifici hanno accesso a informazioni sensibili, in quanto fornisce tutte le approvazioni in base ai ruoli.
RBAC è generalmente considerato un metodo preferito per le applicazioni aziendali. RBAC è più efficace di ACL in relazione alle spese generali amministrative e di sicurezza. ACL è meglio utilizzato per applicare la sicurezza a livello di singolo utente. È possibile utilizzare RBAC per servire un sistema di sicurezza a livello aziendale, monitorato da un amministratore., Un ACL può, ad esempio, fornire l’accesso in scrittura a un determinato file, ma non può definire come un utente può modificare il file.
Esempio di sistema RBAC (Role-Based Access Control)
Role-Based Access Control with Imperva
Imperva consente il controllo dei privilegi utente utilizzando controlli di accesso flessibili basati sui ruoli. Agli utenti viene fornito un accesso di sola visualizzazione, modifica o limitato alle funzioni e agli oggetti di gestione., Le organizzazioni possono anche raggruppare e gestire gerarchicamente le risorse IT in categorie per il controllo degli accessi a grana fine, anche nelle distribuzioni MSSP (Managed Security Service Provider) e nelle aziende su larga scala.