macOS Mojave, Automator "No está autorizado para enviar eventos de Apple a Eventos del sistema".
macos-mojave (5)
Después de actualizar a Mojave, ya no puedo usar el servicio de automatización que he estado usando con la siguiente alerta.
- En Seguridad y Privacidad, ya verifiqué el Editor de AppleScript.
¿Ves algún problema con mi código o este es el problema del macOS más nuevo?
Guión
on run {input, parameters}
set pathList to {}
repeat with itemNum from 1 to count of input
tell application "System Events"
copy POSIX path of (container of (item itemNum of input)) to end of pathList
end tell
end repeat
return pathList
end run
Aquí está lo que hice que resolvió el problema para mí. Fui a Preferencias del sistema> Seguridad y privacidad> Accesibilidad (Opciones en el lado izquierdo)> (Ingresar contraseña del sistema)> Haga clic en Automator (o su aplicación que desea habilitar) y TADA funciona.
Esto es definitivamente una parte del nuevo marco de seguridad de Mojave. En la terminal
prueba
osascript -e ''tell application "Finder"'' -e ''set _b to bounds of window of desktop'' -e ''end tell''
y usted puede recibir:
36:42: execution error: Not authorized to send Apple events to Finder. (-1743)
Lo que se supone que sucederá en la primera ejecución es que el Finder abre un cuadro de diálogo que le informa que el terminal
está solicitando permiso para enviar eventos al Finder. Si lo permite, entonces el terminal
se agregará a la página de automatización en System Preferences > Security & Privacy > Automation
:
Hay dos problemas que veo en este momento:
- la implementación de la solicitud de permiso para la acción de secuencias de comandos parece tener errores; He ejecutado otros scripts que solicitan permiso para enviar eventos a Safari y el Finder no solicita permiso, solo devuelve un error.
- la automatización simplificada requiere algún tipo de mecanismo para que los permisos se otorguen a priori ; un ejemplo sería utilizar AppleScript con Ansible y no poder precargar subvenciones
Otros han escrito información más extensa sobre esto:
- https://www.felix-schwarz.org/blog/2018/06/apple-event-sandboxing-in-macos-mojave
- https://forums.developer.apple.com/thread/106949
Es de esperar que esto se solucione antes de que Mojave se envíe, ya que afecta seriamente las capacidades de automatización en macOS.
Me encontré con el mismo error al abrir gitk
.
Error en el script de inicio: error de ejecución: No está autorizado para enviar eventos de Apple a Eventos del sistema. (-1743)
SOLUCIÓN
Vaya a Settings -> Security & Privacy -> Privacy -> Automation -> Privacy tab
y marque la casilla de verificación System Events
del System Events
.
Tuve un error similar al ejecutar aplicaciones AppleScript .app
. Recibí el siguiente error:
Not authorized to send Apple events to Finder. (-1743)
Una solución alternativa es volver a exportar la aplicación desde el código fuente .scpt
o .applescript
. Esto genera una nueva aplicación .app
, que en mi caso se ejecutó con éxito. El lanzamiento inicial requirió la aprobación (así como algunos lanzamientos posteriores), y la aplicación se agregó como una entrada en Settings -> Security & Privacy -> Privacy -> Automation
.
ACTUALIZACIÓN : La actualización a la última Beta pública (a partir del 4 de agosto de 2018) solucionó el problema para mí. Antes de esto, el problema persistía en todas las betas públicas de Mojave.
Respuesta original:
Solo quería hacerle saber que tanto yo como otro amigo estamos experimentando este mismo problema, con diferentes flujos de trabajo de Automator que utilizan Applescript (diferente al suyo). Tenemos el problema que ocurre tanto con la activación manual (Finder -> Servicios -> haga clic en el elemento ) como con la activación del método abreviado de teclado.
Aún más extraño, el flujo de trabajo se desempeña maravillosamente cuando se prueba dentro de Automator.
¡He presentado un informe de error a través del Asistente de Comentarios y sugiero a cualquier otra persona que vea esto que usted también lo haga! Rueda chillona y todo ...
Automator - Error de permisos. "La acción" Ejecutar AppleScript "encontró un error:" No está autorizado para enviar eventos de Apple a eventos del sistema ".
El flujo de trabajo de Automator funciona bien dentro de Automator