1
我正在編寫一個Rails應用程序,它由用戶A運行。現在有一些其他用戶B,它有權在其他服務器上ssh並在該服務器上運行一些命令。代碼如下:Ruby與不同用戶運行bash命令
Net::SSH.start(server, username, :password => password) do |ssh|
ssh.exec("set of commands authorised to B")
end
我怎樣才能改變用戶在執行時上述任務,不是再次搬回到用戶A.我被檢查寶石popen4,但未能發現b。如果我可以開始與一個過程不同的用戶。
我不完全知道你在這裏真正問的是什麼,但是當你通過ssh連接時,你將運行一個shell作爲你用來連接的用戶。例如。如果我運行'ssh saurabh @ example.com',我將在遠程服務器(example.com)上以'saurabh'登錄,而不是以本地unix用戶身份登錄,或者在用戶擁有Web進程的情況下以rails身份登錄。 – max