如何在 OSX catalina 中运行未签名的系统扩展?
我正在尝试加载 Apple 提供的系统扩展 SimpleFirewall,以演示数据包过滤功能。
该项目编译,但我在运行期间收到此错误:
OSSystemExtensionErrorDomain error 8
查了一下,意思是——
无效的代码签名或缺少权利
我禁用了 SIP,并关闭了 xcode 项目中的代码签名。我还能做些什么来运行它?我没有开发人员 ID.. 只是测试代码..
如何在 OSX catalina 中运行未签名的系统扩展?
我正在尝试加载 Apple 提供的系统扩展 SimpleFirewall,以演示数据包过滤功能。
该项目编译,但我在运行期间收到此错误:
OSSystemExtensionErrorDomain error 8
查了一下,意思是——
无效的代码签名或缺少权利
我禁用了 SIP,并关闭了 xcode 项目中的代码签名。我还能做些什么来运行它?我没有开发人员 ID.. 只是测试代码..
Apple 关于“调试和测试系统扩展”的文档包含有关此主题的一些信息。
理论上,禁用 SIP 应该注意签名要求。您可能仍需要使用免费的 Mac 开发人员证书对扩展进行签名,以便嵌入权利。
您是否尝试从应用程序外部使用扩展程序?如果是这样,命令
systemextensionsctl developer on
应该有帮助。
我对@tuti 有同样的问题。我正在测试基于 Driver Kit 的 hello world 系统扩展。我正在使用免费的开发者帐户、Mac mini Catatila、Xcode 11 进行开发。在我的 Xcode 中,我设置为不对应用程序和系统扩展的代码进行签名。我也禁用了 SIP 并运行命令“systemextensionsctl developer on”。但是当我从 Swift 应用程序加载我的系统扩展时,它仍然显示日志“操作无法完成。(OSSystemExtensionErrorDomain 错误 8。)”。当我查找错误 8 时,表示签名无效。但是在我的电脑上,我可以正常加载一个未签名的内核扩展。所以,我不知道为什么?我认为无论我禁用 SIP,操作系统仍会检查系统扩展的代码签名。