He creado una extensión de kernel para macOS High Sierra.
Cuando el archivo de extensión del kernel se carga en High Sierra, el usuario debe permitirlo en las preferencias de Seguridad y privacidad.
¿Cómo puedo verificar que el usuario permitió que mi extensión de kernel se cargara correctamente? ¿Hay algún archivo en el que se almacenen los detalles de la extensión del kernel permitidos por el usuario?
Encontré una publicación relacionada en StackOverflow propiamente dicha que muestra que la información sobre las aprobaciones se almacena en la base de datos sqlite3 en/var/db/SystemPolicyConfiguration/KextPolicy
Si puede encontrar su kext en la kext_policy
tabla, entonces ha sido aprobado. Aquí hay un ejemplo:
sqlite3 /var/db/SystemPolicyConfiguration/KextPolicy
SQLite version 3.19.3 2017-06-27 16:48:08
Enter ".help" for usage hints.
sqlite> select * from kext_policy;
...
4C6364ACXT|com.parallels.kext.hypervisor|1|Parallels International GmbH|1
4C6364ACXT|com.parallels.kext.vnic|1|Parallels International GmbH|1
4C6364ACXT|com.parallels.kext.netbridge|1|Parallels International GmbH|1
4C6364ACXT|com.parallels.kext.usbconnect|1|Parallels International GmbH|1
...
sqlite>
Necesitaba esta información para saber por qué Parallels de repente vuelve a solicitar mi aprobación hoy, cuando, como puede ver, claramente ya se ha otorgado, pero para mi beneficio, las Preferencias del sistema no me presentan ningún botón "Permitir" para concédelo de nuevo. Quizás Parallels esté detectando que se debe aprobar un nuevo kext, pero parece que Parallels aún no ha intentado cargarlo.
Desafortunadamente para mí, dado que esperaba poder eliminar el permiso y recuperar el botón "Permitir", la base de datos es estrictamente de solo lectura. El procedimiento para eliminar las aprobaciones implica arrancar con una partición de recuperación y suena oneroso. ¡Supongo que esperaré a que el soporte de Parallels responda a través de Twitter!
El crédito por esta respuesta es para el usuario de StackOverflow @mikhail-iakhiaev https://stackoverflow.com/a/51684219/661659
(Editar: el problema no fue con Parallels, mi mesa de ayuda admitió que todas nuestras estaciones de trabajo Mac administradas recibieron una actualización hoy que eliminó nuestra capacidad de aprobar kexts como usuarios. Esperan solucionarlo mañana, pero en beneficio de su pregunta , esa es otra vía en la que sus usuarios podrían haber terminado sin poder aprobar sus kexts como lo haría cualquier otro usuario. ¡Espero que esto ayude!)
sin ladera
pratz
sin ladera