システムへのアクセスが制限されたユーザーがいます(つまり、彼はsudoerではありません)。彼をボブと呼びましょう。
私はシステム管理者である私が信頼するスクリプトまたはバイナリを持っているので、それをrootとして実行しても問題はありません。スクリプトを呼び出しましょうget-todays-passphrase.sh
。このスクリプトの仕事は、にある「プライベート」(Bob以外のユーザー/グループ、またはrootでも所有)ファイルからデータを読み取り/srv/daily-passphrases
、ファイルから特定の行のみを出力することです。今日の日付に対応する行。
Bobのようなユーザーは、ファイルにリストされていても、明日のパスフレーズを知ることはできません。このため、ファイル/srv/daily-passphrases
はUnixパーミッションで保護されているため、Bobなどの非rootユーザーはファイルに直接アクセスできません。ただし、get-todays-passphrase.sh
スクリプトの実行はいつでも許可されており、「フィルタリングされた」データが返されます。
要約すると(TL; DRバージョン):
- ボブは保護されたファイルを読み取ることができません
- スクリプトは保護されたファイルを読み取ることができます
- ボブはいつでもファイルを読み取ることができるスクリプトを実行できます
Unixファイルの権限内でこれを行うことは可能ですか?または、Bobがスクリプトを開始した場合、そのスクリプトは常にBobと同じ権限で実行されるように運命づけられますか?