Objective c Cocoa应用程序中的多重授权

Objective c Cocoa应用程序中的多重授权,objective-c,macos,cocoa,authorization,nstask,Objective C,Macos,Cocoa,Authorization,Nstask,我正在编写一个cocoa应用程序,它需要修改系统代理设置(我正在使用networksetup进行修改)。问题是它需要系统管理员级别的访问权限才能更改代理设置。我尝试以管理员身份运行NSTask,使用苹果的默认API(我使用了STPrivilagedTask包装器),并以管理员权限运行shell脚本。无论哪种方式,它都可以完美运行,但问题是我的应用程序需要多次更改设置,用户每次都必须键入密码 无论如何,我可以一次获得特权,并一次又一次地使用它吗?您想要做的是编写一个“特权助手工具”,它包含(或提供

我正在编写一个cocoa应用程序,它需要修改系统代理设置(我正在使用
networksetup
进行修改)。问题是它需要系统管理员级别的访问权限才能更改代理设置。我尝试以管理员身份运行
NSTask
,使用苹果的默认API(我使用了
STPrivilagedTask
包装器),并以管理员权限运行shell脚本。无论哪种方式,它都可以完美运行,但问题是我的应用程序需要多次更改设置,用户每次都必须键入密码


无论如何,我可以一次获得特权,并一次又一次地使用它吗?

您想要做的是编写一个“特权助手工具”,它包含(或提供,或嵌入)在您的应用程序包中,然后您可以使用
smjobbles()
调用它

创建辅助工具不适合心脏虚弱的人,但这可能会让你走上正确的道路