Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos “如何获得权利”;com.apple.developer.driverkit.userclient-access“;?_Macos_Code Signing_Entitlements_Driverkit - Fatal编程技术网

Macos “如何获得权利”;com.apple.developer.driverkit.userclient-access“;?

Macos “如何获得权利”;com.apple.developer.driverkit.userclient-access“;?,macos,code-signing,entitlements,driverkit,Macos,Code Signing,Entitlements,Driverkit,我们已经申请了与此相关的所有权利。我们得到的信息如下: com.apple.developer.driverkit com.apple.developer.driverkit.transport.hid com.apple.developer.driverkit.family.hid.device com.apple.developer.driverkit.family.hid.eventservice com.apple.developer.driverkit.family.hid.virt

我们已经申请了与此相关的所有权利。我们得到的信息如下:

  • com.apple.developer.driverkit
  • com.apple.developer.driverkit.transport.hid
  • com.apple.developer.driverkit.family.hid.device
  • com.apple.developer.driverkit.family.hid.eventservice
  • com.apple.developer.driverkit.family.hid.virtual.device
我们刚刚了解到,如果我们想要分发能够与DriverKit通信的应用程序,则需要权限
com.apple.developer.DriverKit.userclient访问权限。但是,我们不知道如何生成包含此权利的准备金配置文件。在向苹果发送请求权限时,我们是否遗漏了什么?或者,当我们选择适当的能力时,该权利在某些项目上已准备就绪

在向苹果发送请求权限时,我们是否遗漏了什么

表单没有询问它,但不幸的是,您必须在自由格式文本字段中显式地请求它。确保您还列出了您的应用程序需要与之通信的所有dext包ID,因为每个dext都单独授予了该权限。(至少在几周前是这样。)

您可以重新提交表格,或尝试回复有关您原始权利授予的电子邮件。确保您明确要求使用授权的分销渠道(开发、开发者ID、应用商店)(并检查是否已为您需要的渠道授予了所有现有授权),因为我的一位客户获得了一些仅用于开发的授权,不是分发,因为我们没有明确要求其他

出于开发目的,在您被授予权限之前,您可以启用以下
boot args
kernel参数,以便系统忽略您的配置文件中缺少权限(但应用程序仍需要列出的权限)-这样应用程序仍然可以启动,内核端用户客户端访问权限将通过。通常情况下,如果该应用程序列出了不在资源调配配置文件中的权限,它将立即被AMFI终止

nvram boot-args="amfi_get_out_of_my_way=1"
(这仅可从恢复环境中设置;请确保不覆盖任何现有的
引导参数
,如有必要,只需将其附加到现有的引导参数即可)


最后,如果您计划通过沙盒应用程序(例如,通过应用商店分发的任何应用程序)与dext进行通信,我认为您还需要从沙盒申请。这是
com.apple.security.temporary exception.iokit用户客户端类
权限,需要为
iUserClient
类发布该权限。我不知道这是如何工作的,但如果适用于您,我肯定会将其与您的driverkit用户客户端访问权限一起提及。

谢谢您,菲尔!看到你的帖子后,我们向苹果发送了请求。目前我们的项目只在SIP关闭的情况下可用…这是一个很大的担忧。所以通过这种方式
nvram boot args=“amfi\u get\u out\u of\u my\u way=1”
我可以在SIP打开的情况下测试我的程序吗?如果是,那就太好了!刚刚在恢复模式和csrutil enable下尝试了这个命令,我的应用程序仍然被杀死…我的测试环境是10.15.6我们终于获得了一些权限,让我们的应用程序使用bundle id
com.company.app
与我们的驱动程序使用bundle id
com.company.driver
进行通信,但是在创建概要文件时显示的下拉列表中对权限的描述显示,
com.company.driver
设置为true,
com.apple.developer.driverkit.userclient access
设置为true。我希望
com.apple.developer.driverkit.userclient access
将是一个带有驱动程序包id的数组。我是错过了什么,还是我们得到了错误的权利?