如何使用 visual studio 代码为 macOS 外部 mac 应用程序商店签署和公证电子应用程序构建?

How to sign and notarize an electron application build using visual studio code for macOS for outside mac app store?

我创建了一个电子应用程序,使用 visual studio 代码在 mac 应用程序商店外发布。在 macOS 10.14.4 发布之前,我的应用程序是使用内部使用 electron-forge 的 electron-osx-sign 模块构建并成功签名的。现在 macOS 更新后,我在构建应用程序时收到错误消息 - "rejected source = Unnotarized Developer ID".

我在整个互联网上都在寻找适用于 Xcode 中构建的应用程序的解决方案,但是没有针对使用 javascript 在 visual studio 代码中构建的应用程序的具体解决方案。

我用来为 macOS 创建构建的命令:

"electron-packager . appName --overwrite --platform=darwin --arch=x64 --electron-verison=5.0.1 -icon=icon.icns --osx-sign"

如有任何可能的解决方案,请提供您的意见。

TL;DR

对我来说,将密码更改为应用专用密码解决了这个错误。

说明

App Store Connect 现在要求对所有帐户进行双因素身份验证 (2FA),因此您还必须为公证工具创建应用专用密码。

如何创建应用专用密码:https://support.apple.com/en-us/HT204397)

为什么需要应用专用密码:https://developer.apple.com/documentation/xcode/notarizing_macos_software_before_distribution/customizing_the_notarization_workflow?language=objc#3087734

(顺便说一句,“Unnotarized Developer ID”警告仍然会显示,因为 electron 进程在公证之前会检查 staple,但随后它会继续并完成构建)