"com.apple.developer.driverkit.userclient-access"권한을 얻는 방법은 무엇입니까?

Aug 31 2020

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.virtual.device

DriverKit과 통신 할 수있는 앱을 배포하려면 인 타이틀먼트 com.apple.developer.driverkit.userclient-access가 필요하다는 것을 방금 배웠습니다 . 그러나 우리는이 권한을 포함하는 프로비저닝 프로파일을 생성하는 방법을 모릅니다. Apple에 요청 권한을 보낼 때 놓친 것이 있습니까? 아니면 적절한 기능을 선택할 때 특정 항목에 대해이 권한이 준비되어 있습니까?

답변

2 pmdj Aug 31 2020 at 19:15

Apple에 요청 권한을 보낼 때 놓친 것이 있습니까?

양식은 이에 대해 묻지 않지만 안타깝게도 자유 양식 텍스트 필드에서 명시 적으로 요청해야합니다. 각 dext에 개별적으로 권한이 부여되므로 앱이 통신해야하는 모든 dext 번들 ID도 나열해야합니다. (또는 적어도 몇 주 전의 것입니다.)

양식을 다시 제출하거나 원래 권한 부여와 관련된 이메일에 회신 해보십시오. 내 한 클라이언트가 일부 권한을 부여 받았으므로 권한을 사용할 배포 채널 (개발, 개발자 ID, App Store)을 명시 적으로 요청해야합니다 (필요한 채널에 대해 기존의 모든 권한이 부여되었는지 확인). 우리가 명시 적으로 달리 요청하지 않았기 때문에 배포가 아닌 개발 만.

개발 목적을 위해 권한이 부여 될 때까지 다음 boot-args커널 매개 변수를 활성화하여 시스템이 프로비저닝 프로파일에 권한이 없음을 무시하도록 할 수 있습니다 (하지만 앱에 나열된 권한이 여전히 필요함). 이렇게하면 애플리케이션이 계속 사용할 수 있습니다. 시작하면 커널 측 사용자 클라이언트 액세스 권한이 전달됩니다. 일반적으로 앱은 프로비저닝 프로필에없는 권한을 나열하는 경우 AMFI에 의해 즉시 종료됩니다.

nvram boot-args="amfi_get_out_of_my_way=1"

(복구 환경에서만 설정할 수 있습니다. 기존을 덮어 쓰지 말고 boot-args필요한 경우 기존를 추가하기 만하면됩니다.)

마지막으로, 샌드 박스 앱 (예 : App Store를 통해 배포 된 모든 앱)에서 dext와 통신 할 계획이라면 샌드 박스 에서 IOKit 사용자 클라이언트 클래스 임시 예외 를 추가로 신청해야 한다고 생각 합니다 . 이것은 인 타이틀먼트이며 클래스에 대해 발급되어야합니다 . 이것이 어떻게 작동하는지에 대한 자세한 내용은 모르지만 해당되는 경우 드라이버 킷 사용자 클라이언트 액세스 권한과 함께 분명히 언급하겠습니다.com.apple.security.temporary-exception.iokit-user-client-classIOUserUserClient