electron:代码签名削弱了我在macOS上应用程序的某些功能 目标

electron:代码签名削弱了我在macOS上应用程序的某些功能 目标,macos,electron,code-signing,packaging,Macos,Electron,Code Signing,Packaging,我的电子应用程序由前端进程和后端子进程组成。在macOS上,后端需要macOS上的一些功能,例如访问用户桌面和麦克风。后端通过Xcode构建,并分别使用相同的开发人员ID进行代码签名 第一次运行时,将要求用户根据功能授予权限。在随后的发布中,该应用程序应在无需用户干预的情况下平稳运行。在通过工作正常的电子进行代码签名之前 我已经准备好通过electron-osx-sign对应用程序进行代码设计,希望应用程序能够正常运行 问题 当使用Electron签名时,我以这种方式使用记录在案的Electro

我的电子应用程序由前端进程和后端子进程组成。在macOS上,后端需要macOS上的一些功能,例如访问用户桌面和麦克风。后端通过Xcode构建,并分别使用相同的开发人员ID进行代码签名

第一次运行时,将要求用户根据功能授予权限。在随后的发布中,该应用程序应在无需用户干预的情况下平稳运行。在通过工作正常的电子进行代码签名之前

我已经准备好通过
electron-osx-sign
对应用程序进行代码设计,希望应用程序能够正常运行

问题 当使用Electron签名时,我以这种方式使用记录在案的
Electron forge
选项

“osxSign”:{
“权利”:“权利.plist”,
“权利继承”:“权利.plist”,
“身份”:“Mac开发者:我(我的id)”
},
“OSXEnrolize”:“require:./enrolize.js”,
我的权利就是这样


com.apple.security.cs.allow-jit
com.apple.security.cs.allow-unsigned-executable-memory
com.apple.security.cs.debugger
com.apple.security.cs.disable-library-validation
com.apple.security.cs.disable-executable-page-protection
com.apple.security.automation.apple-events
在这种情况下,公证脚本返回
false

在此之后,在第一次运行时,不再提示用户输入权限。许可似乎是默许的

我尝试了其他选择,比如

“看门人评估”:错误,
“强化运行时”:正确,
“签名标志”:“库”
其中任何一项都将破坏应用程序,即功能将丢失,并且不会出现错误消息

问题: 这些行为是故意的吗?我应该如何实现预期的行为,有无代码签名?

我自己解决了这个问题

问题既不在于现有的授权条目,也不在于
package.json
选项,而是缺少授权条目:

com.apple.security.get-task-allow
该应用程序在添加后得到了权限提示