皆さん、
次のコマンドを実行して、ユーザーがパスワードを自動的に変更できるようにするユーティリティ プログラム (ChangePassword) を開発しようとしています。
exp_spawnl("passwd", "username")
passwd コマンドは、別のユーザーのパスワードを変更するために root 権限を必要としますが、プログラムを実行するユーザーが root である必要はなく、実行可能ファイルから root 権限を受け取るように、setuid を使用してユーティリティ プログラムを実行したいと考えています。
したがって、次を実行します。
sudo chown root ChangePassword
sudo chmod 6755 ChangePassword
しかし、何らかの理由でこれは機能しません。ChangePassword を実行すると、exp_spawnl によって生成された passwd コマンドはルート権限を継承しません。
何か案は ?