開発中の Python GUI アプリ内で特権をエスカレートする方法を探しています。希望モデルはGUFWです。メイン プログラムを root として実行する必要がない点が気に入っていますが、「rooty」な操作を行う場合は、それを「ロック解除」する必要があります。
ユーザーのホーム ディレクトリ ツリーまたは /usr のディレクトリ (ルートの昇格が必要) に保存する必要があるテキスト ファイルを開発しているプログラムがあります。
プログラムをルートとして実行したくありませんが、プログラムを実行しているユーザーとは異なるユーザー (この場合はルート) にファイルを保存する必要がある場合は、ルート アクセスを呼び出します。
一時的な場所に保存して、次のような (ba)sh 呼び出しに戻したくありません。
os.system('gksu cp /tmp/myfile /usr/systemdir/myfile')
可能であれば、すべて Python 内でプログラムで実行したいと考えています。将来的には、単にファイルを作成するだけでなく、ファイルの途中で何らかの追加が必要になる操作が必要になる可能性があります。
また、その保存操作が完了した後、私は権限をエスカレーション解除したいと考えています。
誰かがこの試みのチュートリアルやサンプルコードを教えてくれませんか?
よろしく、
ナルニー