我刚刚在 freedesktop.org 上阅读 David Z 为 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 分钟,如果我们想设置自定义超时,我们已经编写了自定义规则。
有谁知道我该如何为超时编写自定义规则?我尝试按照手册进行操作,但我不是编码员,我无法理解合成器,也没有提到与超时相关的合成器。
不幸的是,在 PolicyKit 上游源文件中,超时似乎被硬编码为 5 分钟。
src/polkitbackend/polkitbackendinteractiveauthority.c
在第 3231-3236 行它说:
因此,在源代码中超时设置为 5 分钟,目前没有规定在不重新编译 PolicyKit 的适当部分的情况下更改它。
另一方面,OpenSuSE Leap 15 似乎扩展了这个功能。他们似乎已将这些
..._keep
操作重新解释为“在询问过程运行时记住身份验证”,并添加..._keep_session
和..._keep_always
操作分别表示“记住整个特定登录会话”和“永远记住”。