1

SUIDフラグを設定したいPythonファイルがあります。そのため、通常のユーザーが実行すると、rootとして実行されます。これはセキュリティの問題ですが、SUIDフラグを設定する必要があります。

4

1 に答える 1

0

最新のUnixで動作するには、suidビットのネイティブイメージが必要です。本当にその要件がある場合は、環境をクリーンアップしてからスクリプトを実行するPythonコードが埋め込まれたC /C++プログラムを作成します。

これを行う良い方法は、boost ::pythonを使用してPythonをC++プログラムに埋め込み、安全で静的にリンクされたイメージを作成できるようにすることです。

実際に何をしようとしているかに応じて、別のオプションは、スクリプトをデーモンプロセスに変換し、既知のコンテキストから開始して(たとえば、daemontoolsを使用して)、何かを行う必要があるときにユーザーに通信させることです。適切なアクセス制御を備えた名前付きパイプを使用します。

2番目のオプションが適切かどうかは、本当に必要なものによって異なります。

于 2011-01-09T06:52:51.923 に答える