我正在开发一个在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)
是否禁止在Mac App Store外使用Personal VPN功能?如果是这样,没有任何意义,因为它不使用任何Apple服务。
更新
在与Apple的某个人交谈后,很明显个人VPN功能不允许在App Store外部使用,因此不能与开发者ID证书一起使用。以下是允许哪种代码签名[the list here]
的列表答案 0 :(得分:3)
我知道这个问题很旧,但我想提供更新。从macOS 10.12和XCode 8开始,Mac App Store外部允许使用开发者ID签名的Mac Apps。以这种方式签名的应用程序将在10.11和10.12上运行而不会出现问题。这是我在2016年WWDC上要求的一项变更,该变更已经实施。您将看到链接到的列表OP已更新。