The ‘VPN Service’ payload could not be installed. The VPN service could not be created."

Hello ,

We've developed a MacOS app with a system extension that includes a content filter using socket and packet providers. To enable the extension, we applied the following payload : -

<dict>
   <key>PayloadContent</key>
   <array>
      <dict>
         <key>PayloadIdentifier</key>
         <string>com.companyname.webcontentfilter</string>
         <key>PayloadType</key>
         <string>com.apple.webcontent-filter</string>
         <key>PayloadUUID</key>
         <string>5e8794fb-8820-43cd-9d18-d171539f755a</string>
         <key>PayloadVersion</key>
         <integer>1</integer>
         <key>PayloadScope</key>
         <string>System</string>
         <key>AutoFilterEnabled</key>
         <false />
         <key>FilterBrowsers</key>
         <true/>
         <key>FilterSockets</key>
         <true/>
         <key>FilterType</key>
         <string>Plugin</string>
         <key>FilterPackets</key>
         <true/>
         <key>FilterPacketProviderBundleIdentifier</key>
         <string>com.companyname.dlp.test1.ne.Extension</string>
      </dict>
   </array>
   <key>PayloadDescription</key>
   <string>Description</string>
   <key>PayloadDisplayName</key>
   <string>Restriction Profile</string>
   <key>PayloadIdentifier</key>
   <string>com.test.restriction</string>
   <key>PayloadOrganization</key>
   <string>COMPANY NAME Pvt. Ltd.</string>
   <key>PayloadRemovalDisallowed</key>
   <false/>
   <key>PayloadType</key>
   <string>Configuration</string>
   <key>PayloadUUID</key>
   <string>f5f02ca0-0bed-4844-ba53-ea1e0dd6f61e</string>
   <key>PayloadVersion</key>
   <integer>1</integer>
</dict>

However, it failed to deploy on the device with the reason being: "The ‘VPN Service’ payload could not be installed. The VPN service could not be created." We've followed the guidelines from available resources, but it's not working as expected. Additionally, we're primarily testing on Ventura (M1) and Monterey (Intel). Any insights or advice from your side would be greatly appreciated. Thank you.

Replies

Your product has two providers, a content filter and a packet filter. Your configuration profile enables both providers, but it only lists the packet filter’s bundled ID (FilterPacketProviderBundleIdentifier). You need to list the content filter as well, in PluginBundleID.

Also, there are DR properties that listed as required that you don’t populate.

In terms of debugging problems like this, I recommend that you get started by trying to enable first the content filter, then the packet filter, and then both. That helps to narrow down the scope of any debugging you have to do.

Also, try searching the ’net for terms like com.apple.webcontent-filter. You’ll find advice from various different filter vendors as to how to set this stuff up with their filter, and you can crib from that.

Share and Enjoy

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