Capability
Da Wikipedia, l'enciclopedia libera.
Con il termine capability si intende in informatica un meccanismo di protezione delle risorse orientato agli oggetti complementare alle ACL.
I sistemi che utilizzano le capability associano a ciascun processo una lista di capability (o C-list), che descrive per l'appunto a quali oggetti (per esempio file) il processo può accedere. Una C-list può essere formata da dei nodi, ciascuno dei quali rappresenta i permessi su un determinato oggetto puntato.
[modifica] Implementazione
Ci sono diverse metodologie per implementare le capability:
- In hardware: ad ogni parola in memoria viene aggiunto uno speciale tag che indica se la parola contiene una capability. Solo il sistema operativo possiede i requisiti per poter modificare questi tag.
- In spazio-kernel: il sistema operativo ordina a ciascun processo che tenta di accedere ad un determinato oggetto di verificarne dapprima i permessi consultando una C-list.
- In spazio-utente: le C-list sono memorizzate in spazio-utente, ma per questo motivo devono venire crittografate per impedire contraffazioni da parte degli utenti.