问题标签 [productsign]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
macos - 如何将 productsign 与包含较小签名 pkg 文件的 mpkg 一起使用?
我有一个父安装程序包,比如说,Parent.unsigned.mpkg
我想用 OS X 签名productsign
。
该文件Parent.unsigned.mpkg
包含名为A.pkg
,B.pkg
和的子包C.pkg
,它们依次安装 Clang 编译的命令行二进制文件和bash
包装脚本:
我注册了一个 Mac 开发者帐户,该帐户设置(在其他证书中)带有 ID 的开发者 ID 安装程序证书ABCD1234
(此 ID 实际上与我的 Apple ID 不同且特定于我的 Apple ID。)我使用该security
工具获取此 ID 值:
我使用此 ID 值对这些子包中的每一个进行签名,这似乎毫无意外地进行:
然后,我将这些签名的子包移回其原始文件名:
当我尝试productsign
使用父包时,我收到以下警告消息:
当我尝试验证安装程序是否已签名时,我收到一条拒绝消息:
未签名的安装程序可以正常工作,但它需要绕过 OS X Gatekeeper。因此安装程序包和内容似乎是正确的(或至少可以正常工作)。
我缺少哪些步骤或程序来生成与 OS X Gatekeeper 一起使用的数字签名安装程序?
macos - productsign mac .pkg 安装程序
我需要使用 .pkg 扩展名签署 MacOS 安装程序。我有一个 .pfx 证书并将其添加到钥匙串中。它包含证书和私钥。
但是,当我尝试使用productsign
实用程序对此 .pkg 进行签名时,它会显示错误:
productsign --sign "commonName" unsigned.pkg signed.pkg
productsign:错误:找不到“commonName”的适当签名身份。签署平面样式产品需要安装程序签名身份(不是应用程序签名身份)。
macos - productsign 无法从钥匙串中找到证书
我们正在尝试使用以下命令对 Mac 安装程序(.pkg 文件)进行签名。
但是我们收到以下错误。
当我们尝试使用 查找证书security -v find-identity -p codesigning
时,我们得到以下输出。
您能给我们提供有关如何解决和解决此问题的任何信息吗?
xcode - 提交到 Mac App Store 时不断为应用程序的安装程序提供“无效签名”
我正在尝试向 Mac App Store 提交一个应用程序(使用 Qt 5.4.2(怀疑它很重要,但包括以防万一)),由于某种原因,我不断收到以下错误:
无效签名- 当您错误地签署了应用程序的安装程序时,会发生此错误。此过程需要两个证书:“3rd Party Mac Developer Application”证书和“3rd Party Mac Developer Installer”证书。对包进行签名时,您需要确保使用安装程序证书对包进行签名。确保在通过 Xcode Organizer 提交应用程序或从命令行运行 productbuild 时指定此证书。
当我在 10.10.4 上使用 Xcode 6.4 时,我在 Application Loader 中遇到了这个错误。在进行了通常的搜索之后,我能找到的所有关于这个问题的参考资料都是 3-4 岁的。在一个旧答案中,有人提到升级 OSX 和 Xcode 为他们修复了它,所以我想出了什么问题。
我升级到 OSX 10.11.13 并使用 Xcode 7.2.1(以及 Application Loader 3.4 (902))进行编译,起初我想“哦,嘿!错误消失了!” 因为应用程序加载器不再显示它。但是现在,一旦 Application Loader 上传它,我就会在电子邮件中收到相同的错误(如上所示)!
我有一个 Python 脚本,它通过在 Qt 框架中进行复制、修复和签署二进制文件来执行大量巫术操作,然后它所做的最后两件事是创建 PKG 文件并对其进行签名。起初,我分两个单独的步骤进行操作。对于傻笑,我尝试一步一步地添加--sign
参数productbuild
,但我得到了相同的结果。命令如下所示:
另外,FWIW,这是我一年来第一次尝试更新应用程序(我知道:()这是一台新机器。所以,我删除了开发人员门户(developer.apple.com)中的证书,重新创建它们然后导入/安装/下载它们。实际上,我已经做了好几次试图弄清楚。上次我通过 Xcode 创建它们。所以钥匙串访问看起来像:
我在开发者门户中的视图如下所示:
但是,我可能会提到的另一件事(我不确定它是否重要),每次我将这些新证书添加到 Keychain 时,无论是在 Xcode 中还是主要是创建、下载和导入证书,我必须右键单击证书并转到获取信息-> 信任并将“代码签名”从“未指定值”更改为“始终信任”。
我试图提供很多细节,希望有人可以帮助我查明我做错了什么。如果有人有任何建议或想法,我将不胜感激!
macos - 如何使用 productsign 在 OSX 上签署 APP 安装程序?
我从 Apple 获得了安装程序证书,我的安装程序是自定义 APP(没有 pkg 或其他东西)。现在如果我跑
它只是这样说:
我认为它是错误的或什么的,但也许它只是不喜欢 APP 文件。有任何想法吗?
macos - 使用 productsign 签署 XAR 正在破坏存档文件
我正在尝试使用productsign
来签署XAR
包含 2 个pkg
使用productbuild
. 该xar
工具正在正确创建文件,但我认为签名正在破坏内容,即使获得的文件已签名。下面的一些相关命令输出(我用 替换了敏感信息INFO
):
该productsign
命令是否打算以其他方式工作?我不明白我的方法有什么问题。
macos - OSX - 签名安装程序被拒绝
我正在使用以下内容来签署我的安装程序:
输出如下:
后来,我检查我的安装程序并获得以下信息:
有什么线索吗?
bash - Teamcity:Mac 构建代理无法使用 productsign 对 .pkg 文件进行签名。SignData 失败:CSSMERR_CSP_NO_USER_INTERACTION (-2147415840)
设想:
在我们的 TeamCity 构建完成后,我有一个需要使用 TeamCity 签名的 .pkg 文件。
理想情况下,这可能是最后运行的构建步骤或脚本。经过研究,我尝试了以下方法:
脚本输入:
输出:
问题:
我注意到许多解决方案都提到了在对话框提示中单击“始终允许”第一次出现时提到钥匙串的访问控制,但是我唯一已知的与此构建代理的交互是通过 SSH。有没有办法在 Teamcity mac 构建代理上使用 productsign 签署 .pkg,而无需与此“始终允许”提示进行 gui 交互?或者,有没有办法登录到构建代理并查看 gui,以便我可以单击“始终允许”来启用它?
注意:我还尝试将(本地签名机)私钥的访问控制保存为“允许所有应用程序访问此项目”,将其导出,将其导入构建代理的 login.keychain,然后再次尝试上述操作,仅有相同的输出。当我在我的 macbookpro 上执行相同的过程时,一切正常,但是我不记得我是否确实从很久以前单击过“始终允许”。
有什么想法吗?非常感激。
macos - GitHub Actions:productsign 挂起
我在使用 GitHub Actions 时遇到问题。当我打电话时productsign
,工作就挂了。在搜索互联网时,该工作似乎试图向用户询问密码,但我没有从日志中得到任何错误或反馈。这项工作永远挂起。在我自己的计算机上运行时,一切都按预期工作,并且 .pkg 已签名。
我在工作流程中的步骤如下
我尝试了很多不同的解决方案,但没有任何效果
security import ${P12_FILE} -k ${KEYCHAIN_PATH} -P ${P12_PASSWORD} -A
security import ${P12_FILE} -k ${KEYCHAIN_PATH} -P ${P12_PASSWORD} -T /usr/bin/productsign
- 使用设置分区列表
security set-key-partition-list
- 创建一个新的钥匙串/解锁钥匙串
- 切换到使用 --sign 参数
productbuild
(添加 --sign 时也会挂起) fastlane match
完全没有手动导入证书- 我认为在谷歌上找到的任何其他解决方案
有任何想法吗?这是 GitHub Actions 中的错误吗?