pkexec - pkexecポリシーを作成するときにauth_admin_keepのカスタムタイムアウトを設定する方法

pkexec - pkexecポリシーを作成するときにauth_admin_keepのカスタムタイムアウトを設定する方法

私はfreedesktop.orgでpkexecのDavid Zのリファレンスマニュアルを読みました。

https://www.freedesktop.org/software/polkit/docs/latest/polkit.8.html

そして

https://www.freedesktop.org/software/polkit/docs/latest/pkexec.1.html

このマニュアルでは、auth_admin_keepオプションを使用すると、パスワードは5〜15分間だけ保持されることがわかります。カスタムタイムアウトを設定するには、カスタムルールを作成できます。

時間制限のあるカスタムルールを作成する方法を知っている人はいますか?マニュアル通りに試してみましたが、コーダーではないのでSyntaxを理解できず、タイムアウトに関するSyntaxへの言及もありませんでした。

ベストアンサー1

残念ながら、PolicyKitアップストリームソースコードのタイムアウトは5分でハードコードされているようです。ファイルにsrc/polkitbackend/polkitbackendinteractiveauthority.c

3231-3236行を読む:

/* TODO: right now the time the temporary authorization is kept is hard-coded - we
 *       could make it a propery on the PolkitBackendInteractiveAuthority class (so
 *       the local authority could read it from a config file) or a vfunc
 *       (so the local authority could read it from an annotation on the action).
 */
 expiration_seconds = 5 * 60;

したがって、ソースコードにはタイムアウトが5分に設定されており、現在PolicyKitの対応する部分を再コンパイルせずに変更できる規定はありません。

一方、OpenSuSE Leap 15はこの機能を拡張したようです。..._keep彼らはこれらのタスクを「要求プロセスの実行中に認証を記憶する」と再解釈し、「特定の..._keep_sessionログイン..._keep_alwaysセッション全体について記憶」および「永久に記憶」タスクを追加したようです。

おすすめ記事