Unapproved Caller: SecurityAgent may only be invoked by Apple

So admittedly, this answer isn’t going to help most of you that have encountered this. Unless you happen to fall within that 1% that, like me, have a tendency to treat their mac a bit more like a linux box.

In my particular case, I had been messing with the sudoers file.. Effectively I had gotten the syntax right, but I had inadvertently limited the %wheel% group to just one command.. so visudo was happy to save the file for me, but once the damage was done there was no going back.

In the past I had run into a similar problem, and the answer was to open the Finder, go to the /etc folder, and modify the permissions on /etc/sudoers so that I could edit it.  However since Mavericks, this does not seem to be possible.  Now whenever I tried to do anything that required elevated privileges I would click the lock button and then encounter that dreadful error message, “Unapproved Caller: SecurityAgent may only be invoked by Apple”.  How terribly unhelpful.

After much googling I realized that I was never going to find a workaround while the box was online, so I simply rebooted it into single user mode (apple-S on startup), and then manually fixed the sudoers file.  Problem solved.

Comments 2

  1. Steven

    Hi,i have the same problem….can you explain step by step how did you solve the problem?
    what commands you wrote from terminal? how did you delete the contents of the var/folders?
    (Mavericks 10.9.2 – iMac 27 late 2012)

    1. Post

      Not entirely sure what you mean, Steven.. in my particular case (and likely, not yours) I was intentionally editing the /etc/sudoers file and messed up the syntax for it, which caused this error to appear. If you were not trying to just sudo permissions within that file, then this will not be a valid fix for you.

      As best I can tell, there are several scenarios that can cause this cryptic error message to appear, and mine was just one of the many cases.

Leave a Reply

Your email address will not be published. Required fields are marked *