J'utilise largement Apple Events pour contrôler une grande variété d'applications sur ma machine. Les nouvelles invites de sécurité introduites dans Mojave sont paralysantes .
Dans les versions précédentes de macOS, une fois qu'une application avait reçu l'autorisation de "contrôler votre ordinateur", elle pouvait envoyer des événements Apple à n'importe quelle autre application sur votre machine. Dans Mojave, cette autorisation doit être accordée manuellement une fois pour chaque application contrôlée.
Une fois qu'un utilisateur accorde l'accès, sa sélection est stockée dans l'une des deux bases de données sqlite:
~/Library/Application Support/com.apple.TCC/TCC.db
/Library/Application Support/com.apple.TCC/TCC.db
- Notez que # 2 n'est visible que pour l'utilisateur root.
- Notez que la protection de l'intégrité du système est désactivée.
Serait-il possible de modifier ces bases de données sqlite directement pour accorder automatiquement des autorisations et contourner ces invites de sécurité?
tell app "Finder" to open every application file in the entire contents of (path to applications folder) as alias list
. Alors repeat with A in the result
... ignoring application responses
... quit the application named A
... end ignoring
... end repeat
. Ce sera douloureux, mais ce sera comme arracher un panda.