SD Notary, une interface pour le notaire de macOS

Nicolas Furno |

Toutes les apps macOS devront bientôt être « notarisées », certifiées sur les serveurs d’Apple pour éviter qu’une app se transforme en malware à l’insu parfois même de son créateur (lire : Sécurité : dans macOS Mojave, un notaire pour arrêter les frais). Cette étape supplémentaire sera obligatoire à compter de macOS 10.14.5 pour les nouveaux développeurs, et elle le sera bientôt pour tout le monde et toutes les apps.

Si vous créez une app macOS en utilisant Xcode, le processus est entièrement intégré dans l’outil de développement d’Apple. Si ce n’est pas votre cas, par exemple si vous distribuez une app qui repose sur un script en AppleScript, vous devez passer par un outil en ligne de commande. Les concepteurs de Script Debugger ont créé une interface qui permet de ne pas ouvrir le terminal pour réaliser cette étape de validation.

SD Notary en action

SD Notary est un utilitaire gratuit et assez rudimentaire, qui contient toutefois toutes les options nécessaires pour notariser une app. Il nécessite macOS 10.14 et Xcode 10.2 pour fonctionner correctement, les outils nécessaires étant associés à ces versions du système et de l’app. L’app nécessite aussi un compte développeur Apple payant (99 $ par an), les comptes gratuits ne pouvant pas bénéficier de cette fonction de notaire.

Avant de pouvoir utiliser l’utilitaire, vous devrez générer un mot de passe spécifique à l’app sur votre compte iCloud et l’enregistrer dans le Trousseau d’accès de macOS. Vous trouverez toutes les explications sur la page du projet.

SD Notary évite de passer par le terminal, mais vous pourrez automatiser son fonctionnement en AppleScript, si vous le souhaitez. Les concepteurs de l’utilitaire indiquent que les paramètres par défaut sont optimisés pour un script à notariser. Vous devrez sans doute les ajuster pour une app plus complexe.

avatar SyMich | 

"La notarisation sera bientôt obligatoire pour tout le monde et toutes les applications"
"les comptes gratuits ne pouvant pas bénéficier de cette fonction de notaire."

Est-ce à dire que bientôt il sera obligatoire d'avoir un compte développeur à 99$/an pour développer la moindre application Mac, même gratuite???

avatar reborn | 

@SyMich

Si tu veux que l’app bénéficie d’un certificat Apple alors c’est oui.
Autrement il faut d’abord l’autoriser son exécution dans le panneau de sécurité.

avatar SyMich | 

Si la notarisation devient bientôt OBLIGATOIRE pour tous les développeurs et toutes les applications, comme l'affirme l'article, alors les apps non notarisees ne pourront PLUS être exécutée sur macOS. C'est ce point sur lequel j'aimerais confirmation.
Que veut dire Apple quand ils indiquent que cette notarisation va être rendue OBLIGATOIRE.

avatar reborn | 

@SyMich

Plus d’info ici

avatar SyMich | 

Merci!
Quand ils écrivent "In a future version of macOS, notarization will be required by default for all software." j'aimerais être sûre que le "par défaut" reste debrayable et que l'utilisateur peut accepter (sous sa propre décision) de faire tourner une application non notarisee.

avatar reborn | 

Tu pourra faire tourner une app non notarisé. Comme actuellement pour une app qui n’a pas de certificat Apple tu dois en autoriser l’exécution dans le panneau "sécurité" de l’app réglage.

avatar Link1993 | 

Ca pourra fonctionner comme maintenant en laissant la securité active. Il suffira juste de faire un ctrl+click sur l'application, et selectionner ouvrir. Ensuite, ca sera gardé en mémoire et tu pourras l'ouvrir tout a fait normalement ensuite ;)

avatar Bigdidou | 

@SyMich

« Que veut dire Apple quand ils indiquent que cette notarisation va être rendue OBLIGATOIRE. »

J’ai compris ça aussi. Ça m’étonne un peu que le système ne soit pas ponctuellement débrayable.
C’est la mort de pleins de petits utilitaires.
Ça implique surtout derrière un contrôle total d’Apple et au delà des états (on le voit bien avec iOS) de ce qui peut tourner ou pas sur ton ordinateur.
C’est juste inacceptable.
Il n’y a plus qu’à souhaiter que ce genre de chose n’arrive pas sur Windows. Mais sur les PC, il restera Linux.

avatar SyMich | 

Normalement il n'y a pas de validation d'Apple quant au contenu de l'application. Ils se "contentent de vérifier automatiquement qu'il n'y a pas de portion de code "malicieux" puis lorsque l'app est installée sur un Mac, que le code exécuté est bien le même que celui qu'avait soumis le developpeur (donc sans modification anormale du code).

avatar byte_order | 

Cela va un peu au dela d'un hash du code. La "notarisation" se fait via un hash construit avec un certificat créé à la volée pour cette app, lui même créé avec le certificat du developpeur "Dev ID". La vérification ne vérifie pas que le hash est bon, mais également que le certificat utilisé pour le signé est toujours valable.

Apple peut donc révoquer l'un comme l'autre comme bon lui semble, et ce même si rien n'a changé dans le code, même si la "menace" n'existe pas. Elle se place en maitre des clés.

avatar Bigdidou | 

@SyMich

« Normalement il n'y a pas de validation d'Apple quant au contenu de l'application. Ils se "contentent de vérifier automatiquement qu'il n'y a pas de portion de code "malicieux" »

Certes, et quand un gouvernement leur demandera de ne plus signer telle ou telle application qui intervient contre telle ou telle loi, disposition ou je ne sais quoi, ils feront quoi ?
Quand les lobbies d’ayant droit auront fait une pression de dingue contre tel ou tel client torrent, il va se passer quoi ?
Quand Tim aura décidé que telle ou telle application est sexuellement indéfendable ?
Je caricature un peu, mais bon.
Ce verrouillage sécuritaire est contraignant, voire dangereux, et je ne suis pas convaincu qu’il soit utile.

avatar SyMich | 

Je partage largement vos craintes... d'où ma question concernant le maintien de la possibilité de passer outre les décisions du "notaire" Apple.
Tant qu'on peut le faire même sans certificat "Apple approved" ou même si ce certificat a été révoqué, je m'en contenterai.
Ma crainte c'est qu'un jour ce ne soit plus possible.

avatar reborn | 

@Bigdidou

et quand un gouvernement leur demandera de ne plus signer telle ou telle application qui intervient contre telle ou telle loi, disposition ou je ne sais quoi, ils feront quoi ?

Et bien l’application signé ou pas peut toujours être distribué et exécuté. Cette notarization n’est obligatoire que si l’app veut bénéficier d’un certificat Apple developper ID

avatar Bigdidou | 

@reborn

« Et bien l’application signé ou pas peut toujours être distribué et exécuté. »

Tant mieux, ce n’est pas ce que j’avais compris dans ton lien, mais en anglais : du coup j’ai dû mal interpréter.
Mais es-tu d’accord que ce n’est pas le cas d’iOS, et qu’il est légitime de craindre que cela arrive pour macOS ?

avatar reborn | 

@Bigdidou

"es-tu d’accord que ce n’est pas le cas d’iOS, et qu’il est légitime de craindre que cela arrive pour macOS ?"

Non pas d’accord.
Cela signifierait la suppression de choses comme le Terminal, Python, Ruby qui sont préinstallé de base.

D’ailleurs Python sera mis à jour en version 3.0 dans la prochaine version de macOS.

avatar huexley | 

J'espère que ce sera débrayable en masse dans les MDM sinon ca a pas fini d'être "casse bonbon".

avatar Benckes | 

On dit "notarié", pas notarisé. Pour info. Et même si le terme anglais n'est pas tout à fait transposable en droit français.

CONNEXION UTILISATEUR