通知
すべてクリア
Topic starter
2003年4月11日 3:39 PM
よろしくお願いします。
環境はLinuxでやってます。
exec()でsuコマンドを実行してユーザーの変更をしたいのですが、
パスワード入力の方法がわかりません。
getOutputStream()で渡してみたのですが
standard must be a ttyと
表示されて、exitValue()で、1が返ります。
どうすればよいのでしょう・・・
2003年4月14日 10:20 AM
放置気味なので少し。
うる覚えですが、セキュリティ上の問題で、
パスワードの入力は対話式になっていますので、
suでのパスワード入力を省略することは出来なかったと
思います。
ファイルなどからの読み込みもできないと思います。
ルートからの変更であれば、パスワードを聞かれなかった
ような気がします。
ルートへの変更となると・・・?
rlogin、またはrshコマンドを用いて
同様のことができます。
rshからのログイン処理を含めた一連のshellを
組んでおけば目的のことができるかも知れません。
しかし、これはセキュリティ的に弱くなってしまいますので、
御自身の責任において実行して下さい