Hello,
I am working on a DLP solution for macOS that relies on the Network Extension (NETransparentProxyProvider) for network traffic analysis. Could you please clarify: is it technically possible and officially supported to use a LaunchAgent as the container app to install and manage the Network Extension? If not, what is the recommended approach in case of GUI less application?
Thank you in advance.
In the Apple world there is no such thing as a “GUI-less application”. Apps are user-visible things that you launch from the Finder, the Home screen on iOS, and so so.
If you’re building an product that relies on a system extension (sysex) then my general advice is:
- Embed the system extension in a container app that has a GUI that allows the user to install and remote the sysex using System Extensions framework.
- And, in the case of a NE provide, configure it using the Network Extension API.
- If you need some other background processing functionality — like a
launchddaemon or agent — embed that in your app and manage it viaSMAppService. - If you want to support customers in a managed environment, explore the various MDM options for installing your app, enabling your sysex, and configure its options.
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"