For work, I'm working on a custom macOS installer at the moment …
"Why an installer when installing a macOS app is as simple as dragging and dropping into a folder”, you ask? Well, because this is for a macOS login/authorization plugin …
At this point, most people will probably go “Huh?” and I don’t blame you, because this is a dark corner of macOS coding that most probably don’t venture into 😛
A macOS login plugin allows you to customise the macOS login flow so that you can add your own layer of authorization/security or carry out some specific tasks that need to happen during the login process.
Unofrtunately, none of that is very well documented. In fact, I spent months scouring the Internet and going through documentation to get our implementation of a macOS login plugin working correctly.
In fact, somebody at work said that I was one of possibly 10 people in the world who understood this stuff. Honestly, I don’t believe that since I think that if I could figure it out, anybody else could too since the information is all out there 🙂
Whatever the case, our login plugin requires particular authorization rules to be set and what most people seem to do is to use a shell script to do this since that’s fairly widely documented. But in our case, while that’s the option we are using now, I want to actually do this via code because it simplifies a few logistical issues.
So here I am, exploring the macOS documentation again to see how you can do what I want to do in Swift and finding that this is not very well documented at all 😛
I do wish that the Apple documentation was excellent throughout instead of being very informative for the areas that everybody is interested in and then getting rather opaque, terse, or downright non-existent for the areas that people don’t venture into often. But I guess that’s how it works out — afterall, why bother spending the time on documenting something that not many people will use?
#Coding #Apple #macOS #Authorization #Documentation #Security #Login #Swift