Permitir que la aplicación controle la computadora (dispositivos de asistencia) en Mavericks a través de la Terminal.

Actualmente estoy trabajando en la installation automatizada de Mavericks 10.9. Tengo la configuration de NetBoot. Todo funciona bien hasta que deseo ejecutar Applescript. Desde el lanzamiento de la nueva versión, necesito habilitar manualmente esos scripts. ¿Hay algún command que pueda usar en el script de shell para agregar una aplicación a la list de dispositivos de asistencia? ¿O tal vez hay algún text que debe ser editado para que funcione?

  • ¿Cómo save y salir de "nano .bash_profile" en la Terminal?
  • El command para ingresar elementos de inicio de session no funciona en 10.8
  • Comando de terminal para salir de "Copia de security y synchronization" de Google?
  • ¿Cómo deshabilitar el dialog "cambiar un evento repetitivo" en el calendar de Mac?
  • Devuelve el terminal no encontrado para la mayoría de los commands Mac OSX
  • Por qué ALT +. (último parámetro) no funciona en Bash?
  • ¿Cómo puedo cambiar la date de modificación de un enlace simbólico?
  • ¿Es posible cambiar la forma en que Terminal muestra el permiso de los files?
  • 2 Solutions collect form web for “Permitir que la aplicación controle la computadora (dispositivos de asistencia) en Mavericks a través de la Terminal.”

    La configuration se almacena en /Library/Application Support/com.apple.TCC/TCC.db :

     $ sudo sqlite3 /Library/Application\ Support/com.apple.TCC/TCC.db 'select * from access' kTCCServiceAccessibility|com.apple.ScriptEditor2|0|1|0|   kTCCServiceAccessibility|com.networking-sweater.FastScripts|0|1|0|   kTCCServiceAccessibility|com.apple.AccessibilityInspector|0|1|0|   kTCCServiceAccessibility|com.slate.Slate|0|1|0|   kTCCServiceAccessibility|com.apple.Automator|0|1|1| kTCCServiceAccessibility|com.googlecode.iterm2|0|1|1| 

    sudo sqlite3 /Library/Application\ Support/com.apple.TCC/TCC.db '.schema access' imprime sudo sqlite3 /Library/Application\ Support/com.apple.TCC/TCC.db '.schema access' CREATE TABLE access (service TEXT NOT NULL, client TEXT NOT NULL, client_type INTEGER NOT NULL, allowed INTEGER NOT NULL, prompt_count INTEGER NOT NULL, csreq BLOB, CONSTRAINT key PRIMARY KEY (service, client, client_type)); .

    En mi installation, las últimas cuatro columnas ( client_type , allowed , prompt_count y csreq ) son 0|1|0|\xfa\xde\x0c para las aplicaciones que se agregaron después de que el "example.app" would like to control this computer using accessibility features se mostró el dialog de "example.app" would like to control this computer using accessibility features y 0|1|1| para las aplicaciones que agregué colocándolas en la list en Preferences del sistema.

    ~/Library/Preferences/com.apple.universalaccessAuthWarning.plist contiene una list de aplicaciones para las cuales se ha mostrado el cuadro de dialog de advertencia:

     $ defaults read com.apple.universalaccessAuthWarning { "/Applications/Automator.app" = 1; "/Applications/Automator.app/Contents/MacOS/Automator" = 1; "/Applications/FastScripts.app" = 1; "/Applications/FastScripts.app/Contents/MacOS/FastScripts" = 1; "/Applications/Slate.app" = 1; "/Applications/Slate.app/Contents/MacOS/Slate" = 1; "/Applications/Utilities/AppleScript Editor.app" = 1; "/Applications/Utilities/AppleScript Editor.app/Contents/MacOS/AppleScript Editor" = 1; "/Applications/Xcode.app/Contents/Applications/Accessibility Inspector.app" = 1; "/Applications/Xcode.app/Contents/Applications/Accessibility Inspector.app/Contents/MacOS/Accessibility Inspector" = 1; "/Applications/iTerm.app" = 1; "/Applications/iTerm.app/Contents/MacOS/iTerm" = 1; "/Users/lauri/Desktop/aa.app" = 1; "/Users/lauri/Desktop/aa.app/Contents/MacOS/applet" = 1; "com.apple.AccessibilityInspector" = 1; "com.apple.Automator" = 1; "com.apple.ScriptEditor.id.aa" = 1; "com.apple.ScriptEditor2" = 1; "com.networking-sweater.FastScripts" = 1; "com.slate.Slate" = 1; } 

    Sin embargo, no pude encontrar la forma de permitir el acceso a dispositivos de asistencia para una aplicación. Intenté, por ejemplo, ejecutar estos commands:

     sudo sqlite3 /Library/Application\ Support/com.apple.TCC/TCC.db 'insert into access values ("kTCCServiceAccessibility","com.apple.ScriptEditor.id.qq",0,1,0,"'$'\xfa\xde\x0c''");' defaults write com.apple.universalaccessAuthWarning com.apple.ScriptEditor.id.qq -bool true defaults write com.apple.universalaccessAuthWarning /Users/lauri/Desktop/qq.app -bool true defaults write com.apple.universalaccessAuthWarning /Users/lauri/Desktop/qq.app/Contents/MacOS/applet -bool true sudo killall tccd 

    También intenté reiniciar para aplicar los cambios y configurar las últimas cuatro columnas en 0,1,1,"" .

    También puede agregar el file siguiendo los siguientes commands.

    Este command encontrará el identificador de package para la aplicación que está intentando agregar a los dispositivos de asistencia.

     /usr/libexec/PlistBuddy -c 'Print CFBundleIdentifier' /Applications/enterapplicaitonnamehere.app/Contents/Info.plist 

    Digamos que la aplicación que intentabas agregar era SKYPE. A continuación, debe ingresar esto a continuación:

     /usr/libexec/PlistBuddy -c 'Print CFBundleIdentifier' /Applications/Skype.app/Contents/Info.plist 

    Y su identificador de package sería:

     com.skype.skype 

    A continuación, use esta salida en el siguiente command:

     sudo sqlite3 /Library/Application\ Support/com.apple.TCC/TCC.db "REPLACE INTO access VALUES('kTCCServiceAccessibility','',0,1,1,NULL);" 

    Para Skype se vería así:

     sudo sqlite3 /Library/Application\ Support/com.apple.TCC/TCC.db "REPLACE INTO access VALUES('kTCCServiceAccessibility','com.skype.skype',0,1,1,NULL);" 

    Para eliminar la aplicación, debe usar sudo sqlite3 /Library/Application\ Support/com.apple.TCC/TCC.db "delete from access where client='com.skype.skype';"

    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).