Ho un utente con accesso limitato al sistema (cioè non è un sudoer); chiamiamolo Bob .
Ho uno script o un file binario di cui io, l'amministratore di sistema, mi fido e che non avrei problemi a eseguirlo come root; chiamiamo la sceneggiatura get-todays-passphrase.sh
. Il compito di questo script è leggere i dati da un file "privato" (di proprietà di un utente / gruppo diverso da Bob, o anche root) che si trova in /srv/daily-passphrases
, e solo generare una riga specifica dal file: la linea che corrisponde alla data di oggi .
Agli utenti come Bob non è consentito conoscere la passphrase di domani, anche se è elencata nel file. Per questo motivo, il file /srv/daily-passphrases
è protetto dalle autorizzazioni Unix, quindi agli utenti non root come Bob non è consentito accedere direttamente al file. Tuttavia, possono eseguire lo get-todays-passphrase.sh
script in qualsiasi momento, restituendo i dati "filtrati".
Per riassumere (la versione TL; DR ):
- Bob non riesce a leggere il file protetto
- Lo script può leggere il file protetto
- In qualsiasi momento, Bob può eseguire lo script in grado di leggere il file
È possibile farlo con le autorizzazioni dei file Unix? O se Bob avvia uno script, lo script sarà sempre destinato a funzionare con le stesse autorizzazioni di Bob?