我正在编写一个需要修改系统代理设置的可可应用程序(我正在使用networksetup
来执行此操作)。问题是需要系统管理员级别访问才能更改代理设置。我尝试使用Apple的默认API(我使用NSTask
包装器)运行STPrivilagedTask
作为管理员运行并运行具有管理员权限的shell脚本。它的工作方式完美无缺,但问题是我的应用程序需要多次更改设置,用户每次都必须输入密码。
无论如何,我可以获得一次特权,并一次又一次地使用它吗?
答案 0 :(得分:1)
您要做的是编写一个“特权帮助工具”,它可以包含(或交付或嵌入)您的应用程序包中,然后您可以使用SMJobBless()
进行调用。
创建一个帮助工具不适合胆小的人,但是here is a related question with answers可能会让你走上正确的道路。