ssh xcodebuild 没有签名证书

Posted

技术标签:

【中文标题】ssh xcodebuild 没有签名证书【英文标题】:ssh xcodebuild no signing certificate 【发布时间】:2016-12-13 15:58:06 【问题描述】:

当我尝试使用 xcodebuild 通过 ssh 构建我的应用程序时

xcodebuild -sdk iphoneos10.1 -target <app_target> -configuration Debug CODE_SIGN_IDENTITY="iPhone Developer" PROVISIONING_PROFILE=<profile> CONFIGURATION_BUILD_DIR=<some_dir>

报错

未找到签名证书“​​ios 开发”:否 “iOS 开发”签名证书匹配团队 ID “team_id” 找到了带有私钥的。产品需要代码签名 在 SDK 'iOS 10.1' 中输入“应用程序”

如果我在没有 ssh 的情况下运行它,它会构建。 CODE_SIGN_IDENTITY 不同于“certificate_name”。他们不应该是一样的吗?我要求的是“iPhone Developer”,构建错误是关于“iOS Development”。

我已经尝试过this answer(如果与我的问题完全相关)。

当我尝试 ssh-ed 并尝试 security list-keychains 时,它会列出两次系统钥匙串。如果我没有 ssh-ed,它也会显示用户登录 keychain-db。 我在 ssh-ed 时解锁了登录钥匙串,看看它是否会显示在列表中,但不是。

【问题讨论】:

【参考方案1】:

最简单的解决方案是将证书从登录钥匙串复制到系统钥匙串。不知道这有多安全或正确。

【讨论】:

【参考方案2】:

CODE_SIGN_IDENTITY 应该是这样的:

iPhone Developer: Your Name (3374ZYXN2A)

您可以在钥匙链中找到它:

打开钥匙串访问 找到您的证书 右键单击它并选择“获取信息” 复制“通用名”中的条目

【讨论】:

好的,我明白了。但是,只有在您手动签名时,您才需要指定它的全部内容。我正在为 CODE_SIGN_IDENTITY 使用“iPhone Developer”。哦,对不起,我误导了你和其他人。我确实成功地使用 xcodebuild 构建了它,只是在使用具有相同设置的 ssh 时没有成功。

以上是关于ssh xcodebuild 没有签名证书的主要内容,如果未能解决你的问题,请参考以下文章

xcode 8 xcodebuild 从命令行对多个配置文件进行手动代码签名

带有自签名证书的 Amazon Beanstalk Web 服务器?

SAML 签名证书 - 您的角色没有管理签名证书所需的权限

企业为啥不能使用自签名SSL证书?

签名证书和加密证书的区别

是否可以创建没有签名字段的 x509 证书? [复制]