由外部供应商开发的App的iOS内部分发

第三方已经开发了一个在我们的企业环境中使用的应用程序。 现在是分发的时间了,他们不想把代码发给我们。 我有一种感觉,这将导致一个问题,因为分发configuration文件和证书将不得不被发送给他们妥协我们不能允许我们的私钥。

这是正确的,还是可以这样做,而不会影响我们的私人密钥。

编辑:作为一个便笺,我可以给他们发送一个私钥,如果它只适用于每个应用程序,即只有该应用程序包ID,我们可以有一个企业许可证下不同的应用程序与不同的私钥。

您必须与第三方共享您的开发者证书(与您的私钥(.p12)分发)才能使用您的供应configuration文件。 但正如您所提到的,您可以使用完整限定符(如com.yourcompany.appname)作为捆绑标识符来限制configuration文件。 但这并不意味着他们不能使用configuration文件,他们可以更新包标识符来testing他们的应用程序。

开发者证书和configuration文件是有效期限,这可能是你最终的希望。

如果我可以build议,我build议你相信你的开发者。 我用证书pipe理几个客户,我不会滥用。

我还build议您在合同中添加一个条款,不要滥用您的configuration或分发证书。 聪明的开发人员不需要证书,因为我们知道如何在没有代码签名的情况下将xcode打包到设备上运行。

我build议你让他们在xcode4的产品菜单下的“存档”下发给你。

然后,您可以将其导入到您的系统中,并使用xcode组织者的“共享”button来使用您的企业私钥和企业configuration文件辞职。

所以总的结果是他们不必与你分享他们的源代码,你不必与他们分享你的密钥。

我已经看到了xcode的辞职似乎不起作用的情况; 在这种情况下,你可以使用https://github.com/maciekish/iReSign做辞职部分。