我需要使用 .pkg 扩展名签署 MacOS 安装程序。我有一个 .pfx 证书并将其添加到钥匙串中。它包含证书和私钥。
但是,当我尝试使用productsign
实用程序对此 .pkg 进行签名时,它会显示错误:
productsign --sign "commonName" unsigned.pkg signed.pkg
productsign:错误:找不到“commonName”的适当签名身份。签署平面样式产品需要安装程序签名身份(不是应用程序签名身份)。
我需要使用 .pkg 扩展名签署 MacOS 安装程序。我有一个 .pfx 证书并将其添加到钥匙串中。它包含证书和私钥。
但是,当我尝试使用productsign
实用程序对此 .pkg 进行签名时,它会显示错误:
productsign --sign "commonName" unsigned.pkg signed.pkg
productsign:错误:找不到“commonName”的适当签名身份。签署平面样式产品需要安装程序签名身份(不是应用程序签名身份)。
这些步骤对我们有用:
解锁钥匙串:
security unlock-keychain -p {keychain_password} /Users/{your_user}/Library/Keychains/login.keychain-db
列出可用的签名身份:
注意:代码签名身份不能用于在 mac 中对 pkg 进行签名。您可以通过添加-p codesigning
到以下命令来找到这些。
security find-identity -v
使用 productsign 对安装程序进行签名:
注意:标识通常可以是来自上述命令的长十六进制代码:
productsign --sign "{your_identity}" original.pkg signed.pkg
您必须找出您的 pfx 的名称并用它替换“commonName”。
您应该搜索“开发人员 ID 应用程序:...”之类的内容来签署包。