OS X Mountain Lion : Gatekeeper, sandboxing et AppleScript

Nicolas Furno |
Avec OS X Mountain Lion, Apple va renforcer encore la sécurité concernant les applications et leurs capacités. Le sandboxing sera en place dès le mois de juin et il sera doublé dans le nouveau système attendu pour la fin de l'été par un système de signature. Gatekeeper n'acceptera par défaut que les applications sandboxées du Mac App Store et les applications signées par un certificat accordé par Apple (lire : OS X Mountain Lion : les développeurs, Gatekeeper et le sandboxing).



Pour la plupart des utilisateurs, ces changements ne devraient avoir qu'un impact limité. Le Mac App Store est déjà le moyen le plus simple de télécharger une application et il devrait voir son importance s'accentuer encore avec le temps. Pour les utilisateurs les plus avancés toutefois, cela pourrait poser un problème, en particulier si vous avez l'habitude d'utiliser les capacités d'automatisation d'OS X.

Si vous utilisez des scripts AppleScript ou des actions Automator pour votre besoin personnel, vous ne devriez pas être gêné par les nouvelles fonctions de sécurité. Les scripts fonctionnent exactement comme avant dans la première bêta d'OS X Mountain Lion et il n'y a aucune raison pour que cela change d'ici la sortie de la version finale. Si vous êtes capables d'écrire un script, vous pouvez faire ce que vous voulez sur votre machine…



Le problème est différent toutefois pour les développeurs qui utilisent AppleScript dans leurs applications. Le cas de figure est courant : le lecteur de musique Ecoute (5,99 €) utilise le langage de script d'Apple pour envoyer le morceau actuellement écouté dans iChat. L'éditeur de code BBEdit (39,99 €) de son côté l'exploite pour installer ses outils en ligne de commandes, et on pourrait ainsi multiplier les exemples.

Pour ces utilisations, deux cas de figure : si le script est inclus dans l'application et ne sert qu'en interne, le sandboxing ne devrait pas poser de problème. En revanche, les scripts qui servent à contrôler une autre application seront bloqués par défaut. Le développeur devra alors déclarer son utilisation et obtenir une autorisation de la part d'Apple. Le danger est alors que l'entreprise juge la demande inappropriée et refuse de donner l'autorisation. Pour l'heure, on ne peut que faire confiance à Apple et espérer que la firme de Tim Cook saura garder un peu de souplesse quant au sandboxing.

Dernier cas de figure, une application peut utiliser un script externe. C'est le cas notamment du lanceur Alfred (Gratuit) qui peut ainsi gagner des fonctions supplémentaires. Dans OS X Mountain Lion, les scripts devront être installés dans le dossier ~/Bibliothèque/Application Scripts pour être accessibles par une application, mais cette dernière ne pourra pas ajouter facilement un script dans ce dossier. Le développeur pourra soit demander à ses utilisateurs d'ajouter eux-mêmes l'élément, soit créer un outil d'installation qui bénéficiera d'un accès en écriture.



Pour l'heure, le sandboxing et Gatekeeper appellent plus de questions que de réponses. Vous devriez toutefois en créer librement pour votre usage personnel et on notera à propos qu'Apple n'abandonne pas le support de l'AppleScript dans OS X Mountain Lion. Pour preuve, les nouvelles applications comme Reminders et Notes peuvent être scriptées. Pour les développeurs, si l'utilisation de scripts en interne ne devrait pas non plus être bloquée, les fichiers AppleScript externes et les scripts qui contrôlent d'autres applications pourraient être limités.



Apple a d'ores et déjà prévu des parades toutefois : un développeur pourra déclarer des utilisations normalement interdites par le sandboxing et obtenir une autorisation. Il pourra aussi inciter ses utilisateurs à télécharger un script et là encore, Apple propose une solution pour éviter de se retrouver bloqué par Gatekeeper. OS X Mountain Lion ajoute un nouveau format d'archive, les xip, qui pourront être signés, comme les applications. Un bon moyen de transmettre des fichiers associés à une application, comme un script…

Accédez aux commentaires de l'article