所以我试图调整 GNOME 为特权应用程序验证桌面用户的方式。开箱即用,它要求输入root密码。对于我的部署,这是不可取的,我希望它再次提示用户输入自己的密码,只允许他们访问,如果他们在某一组(wheel)。
我取得了一些进展。如果文件中存在/etc/security/console.apps试图运行的服务名称(例如pirut包管理器),那么 GNOME 将要求输入密码并提升程序。这是pirut文件:
USER=root
PROGRAM=/usr/sbin/pirut
SESSION=true
KEEP_ENV_VARS=http_proxy,ftp_proxy
Run Code Online (Sandbox Code Playgroud)
如果我注释掉/删除该USER=root行,则会提示我输入当前登录的用户,这正是我想要的。问题是只要用户知道他们的密码,它就会启动,所以即使不在我的组中的用户也可以启动特权应用程序。
Aman console.apps是相关的;然而没用:
/etc/security/console.apps/ 目录应该为每个希望允许控制台用户访问的应用程序包含一个文件。文件名应与服务名相同,内容无关;该文件可能是零长度文件。使用该文件的应用程序可以自由地以任何对其有用的方式指定内容。
我的问题:我如何告诉 GNOME/ConsoleHelper 用户也必须在特定位置才能允许执行?