如何将钥匙串从一台开发机器导入另一台机器

Mac*_*per 2 macos xcode code-signing

实际上我们使用两台MAC机器使用xcode在mac中开发一个Package.只有一个mac拥有证书,并且位于不同的国家/地区.我们为本地mac导出了该证书.但是当我尝试使用该证书进行协同设置时,我收到错误"无法为"开发者ID安装程序找到适当的签名身份:ID"我无法添加代码签名.这是什么正确导入证书的步骤.

gai*_*ige 7

该消息通常表示您没有签名所需的私钥,只有证书,这是不够的.

要导出签名身份,最好的办法是使用Xcode中的"帐户"偏好设置面板.

  1. 在要发送签名信息的计算机上启动Xcode
  2. 选择Xcode>首选项
  3. 选择" 帐户"选项卡
  4. 从齿轮菜单中,选择导出帐户,然后选择要放入信息的文件并输入密码
  5. 将导出的标识文件传输到接收计算机
  6. 按照接收机器上的步骤1-3进行操作
  7. 从齿轮菜单中,选择导入帐户并选择刚刚带过的文件,在询问时输入密码.

这应该导入整个签名身份,包括证书,配置文件和私钥.

通过钥匙串访问

如果由于某种原因,您发送签名信息的计算机上的Xcode没有列出任何帐户,您可能正在使用脚本或命令行进行签名并使用身份信息而无需将帐户直接加载到Xcode中UI.如果可能的话,我建议您使用" 帐户"选项卡将您的帐户添加到Xcode ,以获取Xcode提供的自动行为,但这可能不是绝对必要的,特别是如果您只进行开发人员ID(非AppStore)分发.

要从Keychain Access导出,您需要导出签名证书和密钥.签名证书也可以从Apple的开发人员门户网站获得,但密钥永远不会直接离开您的机器(只在CSR中发送它的指纹),因此如果您的组织有权访问的计算机上不存在原始密钥,您可能需要撤销现有密钥并创建一个新密钥.

要在Keychain Access中找到您的密钥,请执行以下操作:

  1. 启动钥匙串访问
  2. 单击我的证书
  3. 查看列表或使用搜索框查找您的证书(搜索Developer ID应该产生任何与开发者ID相关的证书)
  4. 每个具有关联私钥的证书都会在左侧显示一个显示三角形,单击该三角形以显示密钥
  5. 可以通过选择密钥和证书(确保它们都被选中,或一次导出一个)并使用文件>导出项目来导出此密钥
  6. 提示时提供密码以保护导出文件
  7. 将导出的文件复制到另一台计算机
  8. 使用Keychain AccessFile> Import Items将证书/密钥导入新计算机

注意:如果丢失了私钥,则需要撤销证书,生成新密钥并创建新的签名证书.如果没有首先确保没有密钥副本,请不要这样做.具体影响取决于使用密钥签署的证书类型,但您需要重新生成使用上一个密钥的所有证书.