[英]Provide password for running a script inside another script as different user
假設您以用戶A的身份運行腳本: sudo -u A ./script.sh在該script.sh中,我們有一行代碼用另一個用戶B調用另一個腳本script2.sh:sudo -u B ./script2.sh 。 現在,系統提示我輸入用戶B的密碼。有什么方法可以提供該密碼上撥服務嗎?
PS我知道它可能造成的所有安全漏洞。 請不要提及我。
是的,您可以為此選擇。 但是您必須在執行腳本或在腳本本身中對其進行硬編碼時提供該密碼。 請嘗試以下示例:
echo 'passwordofB' | sudo -u B -S ./script2.sh
您也可以像這樣:
sudo -u A ./script.sh passwordofB #as a command line parameter
現在在script.sh
:
echo $1 | sudo -u B -S ./script2.sh
您正在從腳本./script.sh
執行另一個腳本sudo -u B ./script2.sh
./script.sh
對嗎? 因此,用echo $1 | sudo -u B -S ./script2.sh
更改該行echo $1 | sudo -u B -S ./script2.sh
echo $1 | sudo -u B -S ./script2.sh
並以sudo -u A ./script.sh passwordofB
運行第一個腳本sudo -u A ./script.sh passwordofB
,其中passwordofB
是用戶“ B”的密碼
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.