Autoriser le lancement des applications non-signées sur macOS
Si votre système d'exploitation vous suit, version après version depuis de nombreuses années, vous ne devriez pas avoir le soucis. Mais dans le cas d'une ré-installation, ou de l'installation d'une nouvelle machine, autoriser l'installation de n'importe quelle application n'est pas permis par Apple, il est nécessaire d'autoriser les applications non-signées une à une, certainement pour forcer les MacUsers non-avertis de passer par son juteux App Store.
Autoriser les applications une à une
Les applications installées en même temps que macOS sont automatiquement autorisées dès l'installation. Il en va de même pour les applications téléchargées par le Mac App Store, qui sont autorisées dès la fin de leur téléchargement.
Si vous téléchargez une application sur internet, qui est signée par un développeur tierce, et que vous la lancez pour la première fois, vous aurez le message
Il suffit de cliquer sur Ouvrir pour lancer l'application. Le message fait simplement office d'alerte pour être sur qu'aucune application ne se lance en fond de tâche, sans votre accord.
Lorsque vous ouvrez une application qui n'est pas signée, comme une application datant d'avant ce système de protection, vous obtiendrez le message
Ce message est bien plus strict et ne vous autorise pas à lancer l'application. Cepedant tout n'est perdu, si vous allez dans l'onglet Sécurité et Confidentialité des Préférences Système, vous verrez que macOS vous demande "très discrètement" si vous souhaitez accepter l'application.
Une fois cliqué sur Ouvrir quand même, un nouveau message demande confirmation l'ouverture de l'application
l'application s'ouvre alors sans soucis et vous pouvez en profitez autant que vous le souhaitez.
Autoriser toutes applications une bonne fois pour toutes
Pour retrouver sa totale liberté d'installer ce que l'on souhaite, à ses risques et périls, il faut modifier la configuration de GateKeeper.
Ainsi pour passer la configuration par défaut telle qu'on la trouve dans l'onglet Sécurité et Confidentialité des Préférences Système
il suffit de fermer les Préférences Système, d'ouvrir un terminal à partir d'un compte administrateur et de taper la commande
sudo spctl --master-disable
Une fois que l'on relance Préférences Système, le résultat est immédiat, nous avons désormais accès à la valeur "N'importe où" qui permet d'installer les applications sans vérification.
Tout simplement.
Pour revenir en arrière, il suffit de taper la commande
sudo spctl --master-disable
Toujours aussi simple.
Plus à propos de spctl ?
Nous n'avons fait qu'effleurer la commande spctl, qui comme son nom l'indique, est la commande qui permet le contrôle des règles de sécurité de macOS (Security Policy ConTroL).
Elle permet, d'un côté, de gérer les applications autorisées, via leur nom, leur source ou l'identifiant du développeur. D'autres part, en mode Recovery, elle permet aussi d'activer ou désactiver des extensions du kernel, soit des éléments du système.
Si vous préférez conserver la sécurité maximum activée, il est possible que certaines de ces commandes puissent vous être utiles.
Pour vérifier si une application est autorisée, il faut taper la commande, par exemple pour Skype
spctl -av /Applications/Skype.app
avec comme réponse
/Applications/Skype.app: accepted
source=Developer ID
override=security disabled
pour une application téléchargée depuis le Mac App Store, nous obtenons
spctl -av /Applications/LanScan.app
/Applications/LanScan.app: accepted
source=Mac App Store
override=security disabled
pour une application issue de l'installation de macOS
spctl -av /Applications/Safari.app
/Applications/Safari.app: accepted
source=Apple System
override=security disabled
enfin pour une application installée manuellement et ne disposant pas d'un identifiant développeur
spctl -av /Applications/Emulation/SheepShaver/SheepShaver.app
/Applications/Emulation/SheepShaver/SheepShaver.app: accepted
source=no usable signature
override=security disabled
d'ailleurs, si je réactive la sécurité, et que je relance la commande
spctl -av /Applications/Emulation/SheepShaver/SheepShaver.app
/Applications/Emulation/SheepShaver/SheepShaver.app: rejected
source=no usable signature
l'application est directement marquée comme "rejected", rejetée en français.
Si j'autorise manuellement l'application via Préférences Système, j'aurai le résultat
spctl -av /Applications/Emulation/SheepShaver/SheepShaver.app
/Applications/Emulation/SheepShaver/SheepShaver.app: accepted
Elle est simplement marquée comme acceptée.
Il est aussi possible d'agir sur les règles via la commande, c'est d'ailleurs, ce que fait l'application Préférences Système lorsque l'on autorise manuellement une application.
Pour ajouter manuellement une application
spctl --add --label "Mes Apps" /Applications/Skype.app
comme vous pouvez le voir, nous ajouter un label, permettant de tagger l'App. Ainsi si l'on veut désactiver toutes les applications de ce label, il suffit de taper :
spctl --disable --label "Mes Apps"
En jouant avec la commande, vous pouvez complétement façonner les règles de sécurité appliquées à vos applications, mais aussi à vos utilisateurs. Vous pouvez par exemple refuser le lancement de certaines de vos applications à certains utilisateurs de la machine et les autoriser à d'autres. En allant plus loin et en jouant avec Launchd, vous pourrez autoriser les applications à des heures données et les refuser le reste du temps, mais cela est une autre aventure.
Pour terminer, si vous avez des soucis avec ces règles de sécurité, et que vous souhaitez réinitialiser l'ensemble de vos règles, il faut taper la commande
spctl --reset-default
Il faut ensuite redémarrer le Mac. Attention, il faudra réapprouver toutes applications qui le nécessite, pour re-créer l'ensemble de vos règles.
Comme d'habitude, si vous êtes curieux, vous trouverez plus d'information avec la page man de l'application