1 / 20

POSIX A ccess C ontrol L ists

Seminario di Sistemi Operativi mod.B. POSIX A ccess C ontrol L ists. Giacomo Basso 566/538. Argomenti trattati. Perché ACL e come funziona. ACL sui più popolari file system Linux. Come ACL influisce sulle prestazioni. Il tradizionale modello dei permessi dei sistemi UNIX.

Download Presentation

POSIX A ccess C ontrol L ists

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Seminario di Sistemi Operativi mod.B POSIX Access Control Lists Giacomo Basso 566/538

  2. Argomenti trattati • Perché ACL e come funziona. • ACL sui più popolari file system Linux. • Come ACL influisce sulle prestazioni. POSIX Access Control Lists

  3. Il tradizionale modello dei permessi dei sistemi UNIX Ad ogni oggetto del file system sono associati tre insiemi di permessi che definiscono gli accessi per solo tre classi di utenti: owner Questo schema è implementato usando solo 9 bit per ogni oggetto owning group other POSIX Access Control Lists

  4. Limiti • Solo l’amministratore di sistema può creare gruppi ed eventualmente apportare modifiche alla sua composizione. • Per consentire a degli utenti normali di effettuare dei tasks che di norma può fare solo l’amministratore, occorrono particolari utilities che possono incrementare la complessità del sistema e renderne difficile la manutenzione. POSIX Access Control Lists

  5. Come funziona ACL • Un ACL consiste di un insieme di entries. • Ciascuna delle tre classi utente è rappresentata da una ACL entry. • Permessi per utenti o gruppi successivamente aggiunti occupano delle nuove ACL entries. POSIX Access Control Lists

  6. ACL minimale La classe Group contiene solo owning group POSIX Access Control Lists

  7. ACL estesa La classe Group adesso contiene 3 entries + una maschera: POSIX Access Control Lists

  8. La mask entry • La mask entry viene introdotta per conoscere i permessi effettivi delle classi appartenenti a Group. • Rappresenta precisamente il massimo delle possibilità che ha un utente appartenente alla classe Group. • Per owner e other non si usa la maschera. POSIX Access Control Lists

  9. POSIX Access Control Lists

  10. La maschera dei permessi POSIX Access Control Lists

  11. Access ACL Definisce i permessi di accesso correnti di un oggetto del file system Default ACL Definisce i permessi che un oggetto del file system eredita dalla directory in cui è stato creato. Solo per directory. POSIX Access Control Lists

  12. I comandi ACL $ setfacl -m user:joe:rwx dir $ getfacl dir user::rwx user:joe:rwx group::r-x mask::rwx other::--- $ getfacl dir user::rwx group::r-x other::--- $ chmod g-w dir $ ls -dl dir drwxr-x---+ ... agruen suse ... dir $ getfacl dir user::rwx user:joe:rwx #effective:r-x group::r-x mask::r-x other::--- $ ls -dl dir drwxrwx---+ ... agruen suse ... dir POSIX Access Control Lists

  13. Implementazione ACL in Linux • Non ci sono system calls specifiche per ACL (a differenza di freeBSD e Solaris) • ACL implementato mediante Attributi Estesi (EA), ovvero coppie costituite da un nome e un valore associati ad un oggetto del file system (simili alle variabili di ambiente). POSIX Access Control Lists

  14. Ext2 e Ext3 • Ciascun i-node ha un campo chiamato i_file_acl • Questo campo contieneil numero del blocco che contiene gli attributi estesi associati all’oggetto di questo i-node • Per migliorare l’efficienza, i-node con gli stessi attributi estesi possono puntare allo stesso blocco • Non è possibile allocare più di un blocco per gli attributi estesi relativi ad un i-node POSIX Access Control Lists

  15. JFS • Se gli Attributi Estesi sono di piccole dimensioni vengono memorizzate direttamente all’interno dell’i-node • Altrimenti memorizza gli Attributi Estesi di un i-node in un range di blocchi consecutivi. • Non c’è pertanto la limitazione del singolo blocco per i-node • Non è possibile la condivisione dei blocchi POSIX Access Control Lists

  16. XFS • Piccoli insiemi di Attributi Estesi vengono memorizzati direttamente negli i-node. • Insiemi di Attributi Estesi di medie dimensioni vengono memorizzati nei blocchi foglia dei B+-alberi. • Insiemi di Attributi Estesi molto grandi vengono memorizzati nei B+-alberi completi. POSIX Access Control Lists

  17. Performance di EA e ACL vediamo come vengono influenzati i tempi di accesso ad un oggetto del file system Il seguente test è stato effettuato su un pc configurato nel modo seguente Sistema operativo: SuSE Linux 8.2, con SuSE 2.4.20 kernel. Hardware: AMD Athlon processor clocked at 1.1 GHz and 512 MiB of RAM HD 30 GB IBM Ultra ATA 100 hard drive with 7200 RPM, an average seek time of 9.8 ms, and 2 MiB of on-disk cache POSIX Access Control Lists

  18. Performance di EA e ACL • I tempi ottenuti si riferiscono al primo accesso ad un file dopo il riavvio del sistema. • Vengono messi a confronto i tempi di accesso con e senza ACL. POSIX Access Control Lists

  19. Performance di EA e ACL POSIX Access Control Lists

  20. Link di riferimento: http://www.suse.de/~agruen/acl/linux-acls/online POSIX Access Control Lists

More Related