我正在使用AuthorizationExecuteWithPrivileges来运行具有提升权限的shell脚本。一段时间后,我需要再次重新授权才能使其正常工作。有没有办法在授权上设置自定义(veeery long)超时,以便我只获得一次应用程序的密码对话框,并且能够在没有任何提示的情况下执行脚本,直到我关闭应用程序?
答案 0 :(得分:0)
授权到期是出于某种目的,以提高安全性。所以我认为试图破坏它是不好的。
也就是说,一种方法是首先将脚本转换为经过良好审计的小型C程序,并使用标准方式获得的授权将setuid位添加到二进制文件中。 (同样,作为安全功能,大多数UNIX禁止shell脚本的setuid位,因为它们太危险了。)
即使您关闭应用程序一次并重新启动它,您甚至不需要进行身份验证。