시스템에 대한 액세스 권한이 제한된 사용자가 있습니다 (즉, sudoer가 아닙니다). 의 전화 그를 보자 밥을 .
시스템 관리자 인 신뢰하는 스크립트 나 바이너리를 가지고 있으며 루트로 실행하는 데 아무런 문제가 없습니다. 스크립트를 호출합시다 get-todays-passphrase.sh
. 이 스크립트의 작업은에있는 "개인"(Bob 이외의 사용자 / 그룹이 소유하거나 루트) 파일에서 데이터를 읽고 파일에서 /srv/daily-passphrases
특정 행만 출력하는 것입니다. 오늘 날짜와 일치하는 행 .
Bob과 같은 사용자 는 파일에 나열되어 있어도 내일의 암호를 알 수 없습니다 . 이러한 이유로 파일 /srv/daily-passphrases
은 Unix 권한으로 보호되므로 Bob과 같은 루트가 아닌 사용자 는 파일에 직접 액세스 할 수 없습니다 . 그러나 get-todays-passphrase.sh
언제든지 스크립트 를 실행할 수 있으며 "필터링 된"데이터를 반환합니다.
요약하면 ( TL; DR 버전) :
- Bob이 보호 된 파일을 읽을 수 없습니다
- 스크립트는 보호 된 파일을 읽을 수 있습니다
- Bob은 언제든지 파일을 읽을 수있는 스크립트를 실행할 수 있습니다.
Unix 파일 권한 내에서이 작업을 수행 할 수 있습니까? 또는 Bob이 스크립트를 시작하면 스크립트가 Bob과 동일한 권한으로 실행되도록 항상 종료됩니까?