Offenbar ist ab dem 10.7, AuthorizationExecuteWithPrivileges
veraltet. Der allgemeine Kern der Informationen, die ich zu diesem Thema gesammelt habe, scheint die Verwendung der SMJobBless()
Funktion, um eine Hilfsanwendung bereitgestellt zu haben.Einen Benutzer nach erhöhten Rechten fragen und die Anwendung ohne ein Apple-Entwicklerzertifikat erhöhen
Mein Verständnis davon, ist, dass dies ein Entwicklerzertifikat von Apple gekauft werden muss, um sowohl meine Anwendung als auch den Hilfsprozess zu signieren - oder das wird nicht funktionieren. Ist das richtig?
Ich habe ursprünglich AuthorizationExecuteWithPrivileges
verwendet, um einen Benutzer nach erhöhten Rechten zu fragen, da sie für den Zugriff auf einen anderen laufenden Prozess benötigt werden. Ohne das kann meine App nicht als inoffizielles Plugin funktionieren. Ist der Code-Signing-Weg wirklich der einzige Weg von hier aus? Ich versuche, den Kauf eines Entwicklerzertifikats aufgrund der reinen Kosten zu vermeiden.
Hat jemand alternative Möglichkeiten gefunden, eine Anwendung mit erhöhten Rechten neu zu starten, mit Benutzerberechtigung natürlich?
Ich bin immer noch auf der Suche, ob es Optionen gibt, die keine Lizenzierung von Apple erfordern, aber danke für den Hinweis auf ein Beispiel, wie man in einem "Worst Case" -Szenario vernünftig scheitert! Interessant zu sehen, wie das dort gehandhabt wird! – Tiago
@loco Sie haben das wahrscheinlich schon gesehen, aber [Sie können Applescript verwenden (https://stackoverflow.com/questions/6841937/authorizationexecutewithprivileges-is-deprecated). Wenn Sie diesen Weg gehen, stellen Sie sicher, dass Sie 'quoted form 'verwenden, um [den Pfad und die Argumente der ausführbaren Datei zu bereinigen] (https://developer.apple.com/library/mac/technotes/tn2065/_index.html#//apple_ref/doc/uid/DTS10003093-CH1-ABSCHNITT3). –