我的安装程序是使用 PackageMaker 创建的。之后,我使用以下命令对安装程序进行了代码签名。
产品签名——签名“Blah, Inc.”安装.mpkg/CS/安装.mpkg
这似乎工作得很好,我可以看到它是使用以下命令签名的。
pkgutil --check-signature Install.mpkg
由于证书安装在我的系统上的钥匙串中,因此安装程序似乎在右上角显示一个小锁。单击此按钮将打开证书。
如果将安装程序放置在未安装证书的系统中,则不会再看到锁。但是我仍然可以运行命令来检查证书。
1)安装前是否有图形化方式检查代码签名? (我不想运行命令行)
2)我使用finder从mpkg文件中删除了一个文件夹,以查看安装程序是否会抱怨篡改。但这种情况并没有发生。如果安装程序被篡改,有没有办法停止安装?
3)我还使用 xcode 的使用证书选项对包中的所有二进制文件(主要是守护进程)进行了代码签名。我再次能够看到二进制文件已签名,但是我确实收到了一条消息
内核[0]:代码签名:cs_invalid_page(0x1000):p = 224 [MyDaemon]清除CS_VALID。
谷歌搜索,我发现http://feedback.photoshop.com/photoshop_family/topics/photoshop_13_0_4_x64_how_can_i_get_rid_of_the_could_not_complete_your_request_because_of_a http://feedback.photoshop.com/photoshop_family/topics/photoshop_13_0_4_x64_how_can_i_get_rid_of_the_could_not_complete_your_request_because_of_a。但我仍然不太清楚他们的意思。有人可以帮助我吗?
You can sign .mpkg
包裹,但您必须用Developer ID Application
证书和not the Developer ID Installer
cert.
当您签署.mpkg
您收到一个数字警告,提示内部包必须签名,但签名似乎在有或没有内部包的情况下都有效.pkg
signed.
I have tested that modifying an internal .pkg causes the .mpkg to fail the Gatekeeper check
因此,对于每个内部 .pkg 文件,您应该:
sudo productsign --sign "<Developer ID Installer: Cert>" "<source.mpkg>/Contents/Packages/<source.pkg>" "<destination.mpkg>/Contents/Packages/<source.pkg>"
然后对于 .mpkg 执行以下操作:
sudo productsign --sign "<Developer ID Application: Cert>" "<Source .mpkg>" "<Destination .mpkg>"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)