Macos drag&;删除DMG应用程序包

Macos drag&;删除DMG应用程序包,macos,bundle,root,user-permissions,darwin,Macos,Bundle,Root,User Permissions,Darwin,我有一个MacOS应用程序包,作为DMG拖放安装程序分发。最近,增加了从应用程序内部连接到VPN的要求,如果使用sudo调用二进制文件,则可以正常工作,但从.app捆绑包启动时则不行 只有在第一次要求用户进行身份验证时,有没有办法让这项工作永远有效?强烈推荐的方法是使用特权助手工具,可以使用smjobbles()从应用程序安装该工具。安装后,您的应用程序可以使用XPC与特权工具进行通信,并且该工具将始终以root权限运行,而您的应用程序仍然处于非特权状态 苹果保留了一个关于如何做到这一点的示例项

我有一个MacOS应用程序包,作为DMG拖放安装程序分发。最近,增加了从应用程序内部连接到VPN的要求,如果使用sudo调用二进制文件,则可以正常工作,但从.app捆绑包启动时则不行

只有在第一次要求用户进行身份验证时,有没有办法让这项工作永远有效?

强烈推荐的方法是使用特权助手工具,可以使用
smjobbles()
从应用程序安装该工具。安装后,您的应用程序可以使用XPC与特权工具进行通信,并且该工具将始终以root权限运行,而您的应用程序仍然处于非特权状态

苹果保留了一个关于如何做到这一点的示例项目: