第三方已在我们的企业环境中开发了一个供私人使用的应用程序。现在是时候分发它了,他们不想向我们发送他们的代码。我有一种感觉,这会导致一个问题,因为分发配置文件和证书必须发送给他们,这会破坏我们不能允许的私钥。
这是正确的还是可以在不损害我们的私钥的情况下完成。
编辑:作为附注,我可以向他们发送私钥,如果它只能用于每个应用程序,即仅使用该应用程序包ID,并且我们可以在一个企业许可下使用不同的私钥来发送不同的应用程序答案 0 :(得分:17)
我建议您让他们在xcode4的“产品”菜单下进行“存档”,并将结果发送给您。
然后,您可以将其导入您的系统,并使用xcode管理器的“共享”按钮使用您的企业私钥和企业配置文件重新签名应用程序。
因此,总体结果是他们不必与您共享源代码,也不必与他们共享密钥。
我见过xcode的辞职似乎不起作用的情况;在这种情况下,您可以使用https://github.com/maciekish/iReSign来执行辞职部分。
答案 1 :(得分:1)
您必须与第三方共享您的开发者证书(使用您的私钥分发(.p12))才能使用您的配置文件。但正如您所提到的,您可以使用完整限定符(如com.yourcompany.appname)作为捆绑标识符来限制配置文件。但这并不意味着他们不能使用配置文件,他们可以更新捆绑包标识符来测试他们的应用程序。
开发人员证书和配置文件随附有效期,这可能是您最后的希望。
如果我建议,我建议你信任你的开发者。我确实用证书管理了几个客户,我没有滥用。
我还建议您在合同中添加一条不滥用您的配置或分发证书的条款。聪明的开发人员不需要证书,因为我们知道如何在没有代码签名的情况下修补xcode以在设备上运行。