macos - 签署我的 Mac pkg 有效但安装失败?

标签 macos installation certificate signing

我正在使用此命令行签署我的 mac 软件包:

Volumes/Auxiliary\ Tools/PackageMaker.app/Contents/MacOS/PackageMaker \
--sign /Users/company/src/clients/linux-client/mac/company_client_installer.pkg \
--certificate "Developer ID Application: company"

签名有效,但安装失败并出现错误。这是 install.log 中的相关部分:

Oct 16 16:59:33 mac installd[57355]: PackageKit: Install Failed: Error Domain=PKInstallErrorDomain Code=102 "The package “company_client_installer.pkg” is untrusted." UserInfo=0x106a2be30 {NSLocalizedDescription=The package “company_client_installer.pkg” is untrusted., NSURL=file://localhost/Users/company/src/clients/linux-client/mac/company_client_installer.pkg#companyClient.pkg, PKInstallPackageIdentifier=com.company.company_client_installer.pkg, NSUnderlyingError=0x7ffd2a52c900 "The operation couldn’t be completed. CSSMERR_TP_NOT_TRUSTED"} {
1674             NSLocalizedDescription = "The package \U201ccompany_client_installer.pkg\U201d is untrusted.";
1675             NSURL = "file://localhost/Users/company/src/clients/linux-client/mac/company_client_installer.pkg#companyClient.pkg";
1676             NSUnderlyingError = "Error Domain=NSOSStatusErrorDomain Code=-2147409622 \"The operation couldn\U2019t be completed. CSSMERR_TP_NOT_TRUSTED\" UserInfo=0x7ff     d2a5573b0 {SecTrustResult=5, PKTrustLevel=PKTrustLevelNotTrusted, NSLocalizedFailureReason=CSSMERR_TP_NOT_TRUSTED}";
1677             PKInstallPackageIdentifier = "com.company.company_client_installer.pkg";

如果我使用 pkgutil 检查签名,它会返回:

pkgutil --check-signature company_client_installer.pkg
Package "company_client_installer.pkg":
  Status: signed by a certificate trusted by Mac OS X
  Certificate Chain:
    1. Developer ID Application: company
    2. Developer ID Certification Authority
    3. Apple Root CA

我尝试在“钥匙串(keychain)访问”中评估我的证书,它报告“未找到根证书”,但将证书指示为“有效”并带有绿色复选标记.

我现在完全糊涂了。我在这里做错了什么?有什么想法吗?

沃尔克

最佳答案

我不确定您的错误,但是,我知道您需要使用开发者 ID 安装程序证书来签署您的包。

这是我使用的命令:

productsign --sign“开发人员 ID 安装程序:ACME, Inc (ABCDEFGHIJK)”source.pkg target.pkg

您还可以使用以下命令验证您的包:

spctl -a -vvvv --type install MyInstaller.pkg

关于macos - 签署我的 Mac pkg 有效但安装失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12917906/

相关文章:

certificate - 未生成ApacheJMeterTemporaryRootCA.crt

objective-c - 如何在 swift 中使用 USBmakebmRequestType

python - conda 更新使 python 崩溃

java - 安卓NDK : Eclipse parameter and javah

ruby-on-rails - 无法安装 therubyracer gem

ios - 代码签名错误

mysql - 为 MySQL 恢复已删除的 'root' 用户和密码

objective-c - 什么是好的 Mac objective-c 2D 游戏引擎?

objective-c - OS X 辅助功能 API 最小宽度

.net - 无法为受信任的根颁发机构构建证书链