freedesktop.orgでDavidZがpkexec用に書いたリファレンスマニュアルを読んでいたところです:
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分間しか保持されず、カスタムタイムアウトを設定する場合は、カスタムルールを作成する必要があります。
タイムアウトのカスタムルールを作成する方法を知っている人はいますか?マニュアルに沿って従おうとしましたが、私はコーダーではなく、シンタックスを理解できませんでした。タイムアウトに関連するシンタックスについての言及はありませんでした。
承認された回答:
残念ながら、タイムアウトは、ファイルsrc/polkitbackend/polkitbackendinteractiveauthority.c
のPolicyKitアップストリームソースで5分としてハードコードされているようです。 。
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の適切な部分を再コンパイルせずにタイムアウトを変更するための規定はありません。
一方、OpenSuSELeap15はこの機能を拡張したようです。彼らは..._keep
を再解釈したようです 「要求プロセスの実行中に認証を記憶する」ことを意味するアクション、および..._keep_session
を追加 および..._keep_always
それぞれ「この特定のログインセッション全体を記憶する」および「永久に記憶する」を意味するアクション。