Settare l'UID

Naturalmente, c'è un modo per permettere a Steve di dare i suoi stessi permessi a Michele (solo quando Michele esegue il programma summarize). Steve, infatti, può scrivere questo:

 
   chmod u+s summarize

Questo significa “Aggiungi il permesso di Set User ID per l'utente proprietario del file summarize.” Ora i suoi permessi sono i seguenti:

 
-rw-------  steve  sales  customers.dat
-rwsr-xr-x  steve  sales  summarize

Vediamo cosa accade quando Michele esegue il programma:

Evento

Linux interpreta

Michele scrive /home/steve/summarize

Sei l'utente michele del gruppo mktg.
Sei un “other”.
Vuoi eseguire il file
/home/steve/summarize.
Permesso accordato.

Inizio programma.

Set User ID è attivo.
Alakabaud!® Cambio il tuoi user ID.
Tu ora sei l'utente
steve per tutta l'esecuzione del programma.

Programma chiede di leggere il /home/steve/customers.dat

Sei l'utente steve.
Vuoi leggere il file
/home/steve/customers.dat.
Permesso accordato.

Il problema è ora risolto! Steve può consentire a Michele di eseguire il suo programma. Il suo programma cambia temporaneamente l'user ID di Michele con quello di Steve in modo tale che il file dei clienti diventi consultabile (anche per Michele). Al tempo stesso, Michele non riuscirebbe a leggere il file dei clienti eseguendo un altro programma, diverso da summarize,  perché i i suoi permessi non glielo consentirebbero.

Potete usare una costruzione analoga per dare questi permessi al gruppo di utenti che esegue il programma.

 
   chmod g+s summarize

Nota: Alakabaud! è un marchio registrato di Vadic, il Mago Modem.


<< Un nuovo Problema

Indice

Breve Riepilogo su chmod >>