productsign错误:SignData失败:CSSMERR_CSP_NO_USER_INTERACTION

时间:2013-04-29 12:56:20

标签: macos code-signing packagemaker

从ssh终端会话签署应用程序时,我收到以下错误:

productsign[29321:707] SignData failed: CSSMERR_CSP_NO_USER_INTERACTION (-2147415840)

productsign 直到最近才开始工作。

如何解决此错误?

3 个答案:

答案 0 :(得分:4)

我偶然解决了这个问题 - 将网络梳理了好几个小时 - 同时在向Apple支持部门提交事件报告时重现了这些步骤。

从Mac(而不是ssh会话),同一命令生成一个弹出窗口,要求获得访问Keychain的权限。

选择“始终允许”后,问题就消失了。永远。

答案 1 :(得分:3)

尝试从此终端解锁钥匙串:

security -v unlock-keychain -p "<Password>" "/Users/<UserName>/Library/Keychains/login.keychain"

答案 2 :(得分:1)

您实际上可以解决此错误。当您使用productign时,您正在使用Developer ID Installer证书,并且通常建议该证书无法访问私钥以在失败时出现此错误进行签名。

要修复此goto

  1. 钥匙串访问->单击登录钥匙串或您适当的钥匙串下“开发人员ID安装程序”证书前面的小三角箭头(>)。
  2. 双击私钥
  3. 点击“访问控制”标签
  4. 选择“允许所有应用程序访问此项目”

现在从命令行再次尝试productsign,它应该可以工作。