如何在OSX catalina中运行未经签名的系统扩展?
我正在尝试加载SimpleFirewall,这是苹果给出的一个系统扩展,目的是演示包过滤功能。
该项目编译,但我在运行过程中得到了这个错误:
OSSystemExtensionErrorDomain error 8
查一查,意思是-
无效的代码签名或丢失的权利
我禁用了SIP,并关闭了xcode项目中的代码签名。我还能做什么才能跑呢?我没有开发人员的身份证。只是测试代码..。
发布于 2020-08-05 22:30:16
根据爱斯基摩人在苹果开发者论坛上的回答,您还可以
systemextensionsctl developer on
)需要禁用AMFI:
nvram boot-args="amfi_get_out_of_my_way=0x1”
必须在恢复模式下的cmd中完成。
如果您没有带有com.apple.developer.endpoint-security.client
权限的开发人员配置文件,您只需要这样做。
发布于 2020-04-06 12:15:43
苹果关于“调试和测试系统扩展”的文档有关于这个问题的一些信息。
理论上,禁用SIP应该考虑签名要求。您可能仍然需要使用免费的Mac证书对扩展进行签名,这样才能嵌入相应的权限。
你是在尝试使用应用程序外部的扩展吗?如果是,则命令
systemextensionsctl developer on
应该能帮上忙。
发布于 2020-04-17 09:41:49
我对@tuti也有同样的看法。我正在测试一个基于驱动工具包的hello world系统扩展。我正在使用免费的开发者帐户,mini,Xcode 11来开发。在我的Xcode中,我设置为应用程序和系统扩展都不对我的代码签名。我也禁用SIP并运行命令"systemextensionsctl on“。但是,当我从Swift应用程序加载系统扩展时,它仍然显示日志“操作无法完成”(OSSystemExtensionErrorDomain错误8.)。当我查找错误8时,它意味着无效签名。但是在我的计算机中,我可以正常加载一个未签名的内核扩展。我不知道为什么?我认为操作系统仍然检查系统扩展的代码签名,而不管我禁用SIP。
https://stackoverflow.com/questions/60674561
复制相似问题