Custom VPN profile for macOS

I've implemented a VPN app using Packet Tunnel Provider for macOS.
Using Apple Configurator, I can create a VPN profile for my custom SSL. But what happens when the user installs this profile? It's creating a VPN (at the network preferences), but what's the relationship between this and my app?
I know that now it's possible to load this VPN via my app, but what benefits I get from this? Can I set some values via the profile that I can't set via code?

Another question - is it possible to create a profile for one of the native VPN on the Mac, and to create a personal VPN app, which will use this profile, and do some things before connecting to the VPN?

Final question: At Apple Configurator, there are some built-in options at the connection type, such as Pulse, Check Point, etc.. What's the process of getting into that list?
Answered by DTS Engineer in 614276022

But what happens when the user installs this profile?

It’s the largely the same as if they ran your app and manually saved a configuration for your VPN. After the profile is installed the user can use your VPN, either in your app, in Settings / System Preferences, or implicitly via VPN On Demand.

I know that now it's possible to load this VPN via my app, but what benefits I get from this?

Configuration profiles are usually used in a managed environment. The device manager installs the profile via MDM so that the user can use VPN without having to manually configure it themselves.

Another question - is it possible to create a profile for one of the native VPN on the Mac, and to create a Personal VPN app, which will use this profile, and do some things before connecting to the VPN?

No. Personal VPN and managed VPN are different things. A Personal VPN app can only see profiles that it created. A managed configuration can be seen by the associated app but a third-party app can’t be associated with a configuration for one of the built-in VPN transports.

At Apple Configurator, there are some built-in options at the connection type, such as Pulse, Check Point, etc.. What's the process of getting into that list?

There isn’t a documented process for this, so my recommendation is that you file an enhancement request and see how far that gets you.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@apple.com"
Accepted Answer

But what happens when the user installs this profile?

It’s the largely the same as if they ran your app and manually saved a configuration for your VPN. After the profile is installed the user can use your VPN, either in your app, in Settings / System Preferences, or implicitly via VPN On Demand.

I know that now it's possible to load this VPN via my app, but what benefits I get from this?

Configuration profiles are usually used in a managed environment. The device manager installs the profile via MDM so that the user can use VPN without having to manually configure it themselves.

Another question - is it possible to create a profile for one of the native VPN on the Mac, and to create a Personal VPN app, which will use this profile, and do some things before connecting to the VPN?

No. Personal VPN and managed VPN are different things. A Personal VPN app can only see profiles that it created. A managed configuration can be seen by the associated app but a third-party app can’t be associated with a configuration for one of the built-in VPN transports.

At Apple Configurator, there are some built-in options at the connection type, such as Pulse, Check Point, etc.. What's the process of getting into that list?

There isn’t a documented process for this, so my recommendation is that you file an enhancement request and see how far that gets you.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@apple.com"
Thanks for all the detailed answers!
Custom VPN profile for macOS
 
 
Q