为什么签名无效?

时间:2015-12-18 15:57:04

标签: macos productsign

我试图签署我的包以进行自己的分发。

> spctl --assess -v --type install Unsigned.pkg
Unsigned.pkg: rejected
source=no usable signature

那是对的。

> productsign --timestamp=none --sign "Developer ID Installer: Aaa Ltd." Unsigned.pkg Signed.pkg
productsign: signing product with identity "Developer ID Installer: Aaa Ltd. (123456789)" from keychain /Users/user/Library/Keychains/login.keychain
productsign: adding certificate "Developer ID Certification Authority"
productsign: adding certificate "Apple Root CA"
productsign: Wrote signed product archive to Signed.pkg    

很好。

> spctl --assess -v  Signed.pkg
Signed.pkg: rejected
source=no usable signature

...可疑

> spctl --assess -v --type install Signed.pkg
Signed.pkg: accepted
source=Developer ID

看起来很完美。

但是当我启动Signed.pkg时:

Signed.pkg can't be installed because its digital signature is invalid.

为什么?

P.S。阅读Apple website - 证书是正确的,对吗?

1 个答案:

答案 0 :(得分:1)

有同样的问题。看起来像pkg和dmg需要类型安装。(文档说打开) 尝试直接检查上下文。您可能会从中获得更多信息。

spctl -a -t install --context context:primary-signature -v some-app.dmg

还要检查您是否签署了所有框架和内部使用的内容。检查符号链接,因为他们也喜欢粉碎东西。签名不是递归的,您需要手动签名。