3

システムディレクトリに書き込むことができる必要があるValaで単純なGTK +ベースのアプリケーションを作成しているため、ルートアクセスが必要です。root への完全なアクセス権を与えるのは良くないことだとわかっているので、一時的な権限を取得する方法が必要です。

理論的には、PolicyKit D-Bus サービスはこの仕事のためのツールですが、Vala コードは言うまでもなく、それを使用する方法がわかりません。任意の洞察をいただければ幸いです。

更新: さらに掘り下げました。私の出発点はこれでした。したがって、基本的に必要なのは、これらのソリューションを PolicyKit に適応させる方法を見つけることです。このためには、PolicyKit の D-Bus インターフェイスを見つける必要があります。ここで見つけました。(不思議なことに、ローカルの/usr/share/dbus-1/interfacesフォルダーには見つかりませんでした。) しかし、どうすればよいかわかりません。

4

1 に答える 1

2

polkit リファレンス マニュアルには、polkit アプリケーションの作成に関する高レベルの概要など、いくつかの優れた情報が含まれています。

D-Bus インターフェースを直接使用する代わりに、おそらくlibpolkit-gobject-1ライブラリーの使用を検討する必要があります。GIR を直接使用することも、vapigen を使用して VAPI (これをお勧めします) を生成することもできます。 ここに私が生成したものがあります。私は API にあまり詳しくありませんが、Vala API を理解するためのリファレンスとして C API リファレンスを使用するのは非常に簡単です。

于 2013-02-25T01:57:03.117 に答える