Mam użytkownika z ograniczonym dostępem do systemu (to znaczy, że nie jest sudoerem); nazwijmy go Bob .
Mam skrypt lub plik binarny, któremu ja, administrator systemu, ufam i nie miałbym problemów z uruchomieniem go jako root; nazwijmy skrypt get-todays-passphrase.sh
. Zadaniem tego skryptu jest odczyt danych z „prywatnego” (należącego do użytkownika / grupy innego niż Bob, a nawet root) pliku znajdującego się w pliku /srv/daily-passphrases
i wyprowadzenie z pliku tylko określonej linii: linii odpowiadającej dzisiejszej dacie .
Użytkownicy tacy jak Bob nie mogą poznać jutrzejszego hasła, nawet jeśli jest ono wymienione w pliku. Z tego powodu plik /srv/daily-passphrases
jest chroniony uprawnieniami uniksowymi, więc użytkownicy inni niż root, tacy jak Bob, nie mają bezpośredniego dostępu do pliku. Mogą oni jednak uruchomić get-todays-passphrase.sh
skrypt w dowolnym momencie, który zwraca „przefiltrowane” dane.
Podsumowując ( wersja TL; DR ):
- Bob nie może odczytać chronionego pliku
- Skrypt może odczytać chroniony plik
- W dowolnym momencie Bob może uruchomić skrypt, który może odczytać plik
Czy można to zrobić w ramach uprawnień do plików Unix? A jeśli Bob uruchomi skrypt, czy skrypt będzie zawsze skazany na działanie z tymi samymi uprawnieniami, co Bob?