我正在开发一个在 OSX 上运行并使用 NEVPNManager 进行 El Capitan 中引入的 IKEv2 连接的应用程序。为了设置/激活 VPN 连接,它需要“个人 VPN”权利。
如果我使用开发证书签署我的应用程序,它可以在我的机器上按预期工作,或者如果他们绕过 Gatekeeper,它可以在其他人上工作。但是,如果我使用开发人员 ID 证书对其进行签名,则应用程序无法启动。codesign -vvv和spctl -a说它的签名没有问题,但是在 system.log 文件中,当我尝试运行该应用程序时,我看到了这一点。
Nov 19 11:00:01 taskgated[562]: no application identifier provided, can't use provisioning profiles [pid=22401]
Nov 19 11:00:01 taskgated[562]: killed com.myorg.myapp[pid 22401] because its use of the com.apple.developer.networking.vpn.api entitlement is not allowed (error code -67050)
个人 VPN 功能是否会被禁止在 Mac App Store 之外使用?如果是这样,那没有任何意义,因为它不使用任何 Apple 服务。
更新:
在与 Apple 的某个人交谈后,很明显 Personal VPN 功能不允许在 App Store 之外使用,因此它不能与 Developer ID 证书一起使用。以下是哪种代码签名允许使用哪种功能的列表 [此处的列表]