问题标签 [notarize]

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.

0 投票
1 回答
16 浏览

code-signing - 使用 install4j UI/命令行对现有 dmg 进行代码签名和公证

我已经有一个使用 install4j 7.0.8 构建的 dmg。我想对 dmg 进行代码签名和公证。我知道公证支持是从 install4j 8 开始的。有什么方法可以在 install4j 9.0.4 中对现有的 dmg 进行编码签名和公证,而不是从头开始构建它然后对其进行公证。

0 投票
1 回答
24 浏览

macos - 签署 Adob​​e AIR 强化运行时时出现 OSX 错误

仅在使用强化运行时进行签名后,我的 Mac Adob​​e AIR 应用程序出现问题。如果我不强化运行时,它可以正常工作。该程序可能会启动,但最终会产生内存故障。

0 投票
2 回答
97 浏览

macos - 为 OSX 编写和公证可执行文件

我正在尝试从命令行对一个从 javascript 文件生成的小型可执行文件进行代码签名 + 公证,但没有成功。该文件是一个非常简单的 CLI 工具,旨在通过 mac 终端使用。

下载文件并尝试运行它会导致错误:

在此处输入图像描述

“testBinaryFile 无法打开,因为无法确认开发者的身份。”

(并且应该从终端运行它会导致进程处于“终止”状态)。

这些是我所做的步骤: 0. 将代码捆绑到可执行文件中(名为testBinaryFile

  1. 使用以下代码对可执行文件进行代码设计:
  1. 压缩可执行文件(以便上传公证):
  1. 发送 zip 进行公证:
  1. 轮询服务,直到我们收到一条成功的公证消息:
  1. 将 zip 文件上传到我们在 Github 中的主机(也在 Google 的主机服务上尝试过)

  2. 下载 zip 文件,解压缩并尝试运行它 -> 会导致上面附加的错误。

其他说明:*我有一个“Apple Developer ID 证书”,允许在 AppStore 之外分发捆绑的可执行文件。

*我在包含“.app”应用程序(及其/resources中的捆绑包)的经过公证的.dmg安装程序中使用相同的捆绑可执行文件,并且我设法在没有任何问题的情况下使用它

关于如何使它也适用于捆绑包的任何线索?

0 投票
0 回答
31 浏览

xcode - 公证应用程序时如何阻止 Xcode 崩溃?

我的应用程序有效。它通过了它的单元测试,它通过了它的用户验收测试,它甚至没有太多关于弃用的警告(只有一两个)。所以现在我想发布它——我想让它公证。不幸的是,当我对 Xcode 进行公证时“意外”退出 - 尽管到目前为止它已经崩溃了很多次,以至于我很惊讶崩溃让我的 Mac 措手不及。

我的应用程序唯一的“奇怪之处”是它使用了 Sparkle 框架和 Libcrypto。

我正在构建一个 16GB M1 Mac Mini。重现错误的步骤是:

  • 分发应用程序
  • 开发者 ID
  • 上传
  • 自动管理签名或手动管理签名……我看到了与 Apple 通信 - 然后 Boom!它死了。

有没有其他人看到过这样的问题?你是怎么解决的?

我得到的错误日志如下所示:

0 投票
1 回答
67 浏览

python - 公证使用 pyinstaller 创建的 .app 文件的具体步骤是什么?

我有一个名为determinant_calculator.app 的简单应用程序,它是使用Python 3.9 和pyinstaller 创建的。它在我自己的运行 OS 11.3.1 的 Mac 上运行良好。我想与 App Store 以外的其他人分享它。我有一个 Apple Developer 帐户,但我没有开发经验,也没有使用过 XCode。我正在尝试按照https://github.com/pyinstaller/pyinstaller/wiki/Recipe-OSX-Code-Signing中给出的步骤进行操作

我访问了 Apple Developer 的网站并创建了一个证书 developerID_application.cer,并将其下载到我的桌​​面上。在 Keychain Access 中,我上传了证书并在“我的证书”下看到它作为“开发者 ID 应用程序:PaulF (47A67S7RBW)”

determinant_calculator.app 的捆绑内容包含此处显示的 info.plist:

然后在命令行中输入以下内容:

我被要求提供我的钥匙串登录信息,一切似乎都很好。(至少我没有收到任何错误消息。)现在在determinant_calculator.app 包内容中,我看到了一个名为_CodeSignature 的新文件夹。

第一次压缩文件后,我通过 Dropbox 将 .app 与另一台计算机共享。

但是,当我在新电脑上解压文件并双击它时,我得到错误信息,“determinant_calculator”无法打开,因为无法验证开发者。

这是我第一次尝试对应用程序进行公证,我的 Python 脚本非常简单,只使用 tkinter 和 numpy。

0 投票
0 回答
22 浏览

java - 将 jar 提取到文件夹,而不是再次制作 jar 不起作用

我正在尝试对我的应用程序包应用程序进行公证,但有一个来自 3rd 方公司的 jar 文件,其中包含一个 jnilib 文件。(这是一个非常古老的 jar 文件,没有为苹果公证)我的应用程序包有许多嵌套目录,我想这就是为什么当我试图用

命令,当我发送我的应用程序进行公证时,苹果的公证服务返回一个错误,说 jar 下的 jnilib 文件未经过公证。

我的问题是,这个 jar 文件已签名(可能使用 jarsigner),当我提取 jar 时,对 jnilib 进行公证,然后再次制作文件夹 jar,我的应用程序无法正常工作。我试图通过删除 SUB_SYST.RSA 和 SUB_SYST.SF 来删除该标志,我还删除了 MANIFEST.MF 中的 SHA1-Digest 记录,但它不起作用。

奇怪的是,如果我删除 RSA 和 SF 文件而不将它们提取到文件夹中,例如使用删除

我的应用程序正在运行。(当然在这种情况下我不能公证 jnilib 文件)

我的问题是:

  1. 是否可以在不将 jar 提取到文件夹的情况下对该 jnilib 文件进行公证
  2. 将 jar 提取到文件夹后,然后再次制作 jar 文件会损坏我的 java 应用程序,可能是什么原因?
0 投票
0 回答
64 浏览

electron - 公证成功后未公证的开发者ID

当我跑

我明白了

然后我运行公证

结果我得到了

但是当我再次运行 spctl 命令时,我得到了

0 投票
0 回答
30 浏览

macos - 用于提交公证请求的 xcrun altool 第一次几乎总是以 -1013 失败

用于提交公证请求的 xcrun altool 几乎总是第一次失败并出现以下错误:

那就是我正在运行的命令:

但是,当我重新执行此操作时,它按预期工作。我找不到任何公证请求的错误代码列表。有没有办法找出更多细节?该错误试图说明什么?

0 投票
1 回答
57 浏览

macos - 如何在 Github Actions macos runner 中签署和公证 PKG

语境

我正在构建一个 Github Actions 作业来构建、签署和公证PKG 文件。

我正在使用Apple Id 帐户(工作流程需要用户名和密码)以及带有私钥(加密)的Developer Id Installer证书。两者都保存为机密 (base64),并将在工作流中转换为 .p12 文件,然后添加到钥匙串中。

该作业是私有存储库中更大工作流的一部分,它首先从软件生成文件(使用Pyinstaller),然后将 PKG 导出到 AWS S3 存储桶上。

实施

问题

我按照 Github Action 官方文档在 macOS 运行器上安装 Apple 证书,这部分按预期工作。我可以将证书添加到钥匙串并使用它通过productsign命令对 PKG 文件进行签名。

但是,当我将 PKG 发送给 Apple 进行公证时,它会返回该错误:

我试过的

PKG 在分发时按预期工作(只需要以管理员身份打开,未经过公证),因此问题似乎与包实现无关。

我尝试使用命令行执行公证,以下来自不同来源的链接:

但是,即使使用这些命令行(不使用 notarize 操作),我也无法对 PKG 文件进行公证。

问题

我的工作流程出了什么问题,在尝试对包裹进行公证之前我是否遗漏了什么?

PS:我在 Github Actions macos 运行器上找不到任何参考...

0 投票
0 回答
31 浏览

.net - Creating a notarized MacOS command line application with .NET

I have a .NET application that is designed to be run on the command line. You type the name of the application followed by its arguments in a shell window, it does some work, and prints the results. That all works perfectly fine.

But, of course, if I distribute that application, MacOS warns the user that they're about to run a potentially malicious application. Toavoid this, I need to get the application notarized by Apple.

I've joined the developer program, created my keys, and verified that I can sign things with them.

Except signing fails with .NET 5. I eventually found (but cannot refind) a Microsoft bug report about that where they claim it's fixedin .NET 6 and they have no plans to back port. Okay.

I upgrade to .NET 6 and build my application. It works fine.

Now about the signing and notarizing. Apple expects you to do this in XCode, but this is .NET application not an XCode application. I found a number of pages that talked about how to build the bundles that you need for Apple to notarize.

Eventually, I found https://github.com/mitchellh/gon which builds, signs, submits and successfully get notarized, stapled files back.

Here's my config, anonymized slightly:

Fantastic!

Except they don't work. :-( After a little digging it seems that the process of signing the files corrupts them. After signing, running the application reports:

Is it possible to thread this needle?