Vérifier la signature d'une application macOS
05 Janvier 2017
Quand on développe une application et que l’on veut la publier au plus grand nombre, il est primordial de rassurer les utilisateurs. Ainsi il est obligatoire aujourd’hui de signer son application si vous ne voulez pas que vos utilisateurs paniquent devant la fenêtre suivante par exemple :
Du coup, pour signer une application sur macOS, il n’y a pas 50 façons il faut un avoir un compte AppleDevelopper pour récupérer un certificat, la commande pour signer une application est codesign
si vous n’utilisez pas XCode.
Comment faire pour vérifier qu’une application soit correctement signée et s’assurer qu’aucun message n’apparaitra sur le Mac de vos chers utilisateurs.
Via une application graphique
RB App Checker Lite va vous permettre de vérifier la signature d’une application. Un simple drag-and-drop et vous aurez un diagnostique complet de la signature de votre appli.
Prenons par exemple l’app Terminal développé par Apple :
La ligne qui nous intéresse est la dernière du premier paragraphe :
Requirements and resources validate correctly.
RB App Checker Lite présente diverses informations complémentaires tel que :
- la chaine des certificats d’authentification,
- la liste des binaires qui sont signés (en effet normalement tous les binaires d’une application sont censés être signés pour que l’appli soit valide),
- l’identitiant du certificat utilisé pour signer l’appli.
Bref, le Terminal d’Apple est correctement signé…
Directement dans le Terminal
Dans le cas où les applications graphiques vous donnent des boutons, ou que vous voulez juste savoir si oui ou non votre appli est signée, il est possible de vérifier encore plus rapidement via le Terminal grâce à la commande spctl
avec l’option --assess
.
Reprenons notre exemple de Terminal.app :
La sortie de la commande est binaire : «accepted» ou «rejected». Vous aurez compris que cette commande peut être un excellent garde-fou avant d’uploader une application non signée, sur un serveur.
Conclusion
Comme on dit, la première impression est très importante, ne publiez plus d’applications macOS sans être sur qu’elle soit correctement signée.
Si vous voulez des informations plus approfondies sur la signature d’applications sur macOS, je vous recommande la lecture suivante.
Pour info, je ne critique pas Caprine d’afficher la fenêtre d’erreur car la cible de l’appli n’est pas le grand public et que le public ciblé est aisément capable de lancer l’application malgré la fenêtre d’erreur.