代码签名的应用程序与其 Blessed Helper 的代码签名不匹配
Posted
技术标签:
【中文标题】代码签名的应用程序与其 Blessed Helper 的代码签名不匹配【英文标题】:Code signed App doesn't match code signature of its Blessed Helper 【发布时间】:2016-03-02 12:46:15 【问题描述】:当我使用 Xcode 对我的应用程序进行代码签名时,它已被签名,并且所有部分也已被签名。我使用SMJobBless BlessedHelper 在签名之前使用 setreq 命令调整我的 .info 文件。似乎这并没有真正奏效,因为当我检查构建的 .app 时,SMJobBlessUtil.py 告诉我签名条目不匹配:
Tim:Applications akku$ ~/Downloads/SMJobBless/SMJobBlessUtil.py check WashAndGo.app
问题:
WashAndGo.app/Contents/Library/LaunchServices/de.abelssoft.WashAndGoFileHelper: 应用程序指定要求(锚定苹果通用和标识符 “de.abelssoft.WashAndGo”和(证书 leaf[field.1.2.840.113635.100.6.1.9] /* 存在 / 或证书 1[field.1.2.840.113635.100.6.2.6] / 存在 / 和证书 叶[field.1.2.840.113635.100.6.1.13] /存在/和证书 叶[subject.OU] = "84F375TH8K")) 与中的条目不匹配 'SMAuthorizedClients'(标识符“de.abelssoft.WashAndGo”和锚 apple generic and certificate leaf[subject.CN] = "3rd Party Mac 开发者申请:Ascora GmbH (84F375TH8K)”和证书 1[field.1.2.840.113635.100.6.2.1] / 存在 */)
我找到了很多关于代码签名的通用指南,并且对我的应用程序进行代码签名很容易,但不知何故,这种有福的助手签名(以前可以工作)对我不再有用了。
来自 Helper 的 info.plist 文件:
identifier "de.abelssoft.WashAndGo" and anchor apple generic and certificate leaf[subject.CN] = "3rd Party Mac Developer Application: Ascora GmbH (84F375TH8K)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */
来自 App 的 info.plist 文件:
anchor apple generic and identifier "de.abelssoft.WashAndGoFileHelper" and (certificate leaf[field.1.2.840.113635.100.6.1.9] /* exists */ or certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = "84F375TH8K")
任何提示可能是什么问题?需要任何其他信息吗?
【问题讨论】:
【参考方案1】:我已经尝试了很多东西,毕竟问题都消失了。我做过的一些事情是:
我将助手 ID 从 de.abelssoft.WashAndGoFileHelper 更改为 de.abelssoft.WashAndGo.WashAndGoFileHelper,因为我在某处读到助手现在应该是拥有工具的“子命名空间” 我删除了权利文件,因为我自己分发工具,并不真正需要它 我更新了 Xcode 我重新启动了我的 Mac 我建了软件,用了python脚本,又建了软件,用python脚本测试了,突然没有输出,说明一切正常。一旦 python 脚本给了我签名-OK,与助手的通信也开始了【讨论】:
以上是关于代码签名的应用程序与其 Blessed Helper 的代码签名不匹配的主要内容,如果未能解决你的问题,请参考以下文章