執行launchctl我需要從我的沙盒OSX的應用程序執行launchctl load/unload
命令。該應用具有read-write
對啓動代理的plist
文件所在的文件夾的權限(使用應用的用戶之前授予的安全範圍的書籤)。在沙盒Mac應用程序
但是應用程序獲取以下錯誤:
-
5/22/13 9:15:56.420 AM sandboxd[28463]: ([28473]) launchctl(28473) deny file-read-data /private/var/db/launchd.db/com.apple.launchd.peruser.501/overrides.plist
-
要清楚,我不希望自己的應用程序添加到啓動項爲自動啓動,我也發現了類似的話題這http://www.mail-archive.com/[email protected]/msg80413.html談話沒有任何結果。
謝謝你,但'SMJobBless'示例還使用了 「授權服務」 的方法調用(' AuthorizationCopyRights')和Apple文檔聲明:「重要信息:應用程序沙箱中不支持授權服務API,因爲它允許權限升級。」 – anka
這是我忽略的一個好點。我打算告訴你看看Apple的「EvenBetterAuthorizationSample」,但它也使用授權服務。我開始認爲你所要求的是不可能的,因爲沙盒太嚴格了。 – TheDarkKnight
是的,值得注意的是,任何人看到這個答案都值得注意,沙盒應用程序不允許提升權限,儘管沙盒應用程序可以包含幫助程序應用程序,但助手應用程序也必須被沙盒化。 – AriX