从命令行确定代码签名身份?

Posted

技术标签:

【中文标题】从命令行确定代码签名身份?【英文标题】:Determining codesigning identities from the command line? 【发布时间】:2011-10-12 22:14:12 【问题描述】:

我正在尝试设置一种自动方式来签署我的 ios 应用程序。在使用 codesign 之前,有没有办法以编程方式从命令行确定我的有效签名身份是什么?

例如对于命令

codesign -v --sign "iPhone Distribution: Joe Developer" /path/to/app

我怎么知道“iPhone Distribution: Joe Developer”是一个有效的身份?我如何确定其他有效身份?

我更喜欢在命令行中执行此操作的方法,但在 cocoa 中也可以。

【问题讨论】:

【参考方案1】:

为了获取签名身份列表,我找到了完美答案in this objc.io article:

security find-identity -v -p codesigning

它给出如下输出:

1) 4E8D512C8480FAC679947D6E50190AE9BAB3E825 "3rd Party Mac Developer Application: Developer Name (DUCNFCN445)"
2) 8B0EBBAE7E7230BB6AF5D69CA09B769663BC844D "Mac Developer: Developer Name (DUCNFCN445)"
3) 4E8D512C8480AAC67995D69CA09B769663BC844D "iPhone Developer: App Developer (DUCNFCN445)"
4) 65E24CDAF5B3E1E1480818CA4656210871214337 "Developer ID Application: App Developer (DUCNFCN445)"
   4 valid identities found

【讨论】:

如果您创建了一个自签名证书并且它没有显示在列表中,您需要执行以下操作:cloud.githubusercontent.com/assets/350686/15832978/…

以上是关于从命令行确定代码签名身份?的主要内容,如果未能解决你的问题,请参考以下文章

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

Gi命令行操作

我怎样才能准确地找到我的代码签名身份是啥?

Xcode 4 UI 可以很好地构建应用程序,但命令行 xcodebuild 在代码签名时失败

IIS6:从命令行创建/安装 SSL 自签名证书

Jenkins/fastlane - 没有找到本地代码签名身份