L’autorisation garantit qu’Apple a vérifié l’absence de composants malveillants dans le logiciel signé à l’aide d’un Developer ID que vous distribuez. Pour plus de détails sur les règles et les exigences de l’autorisation d’Apple, consultez la section Autorisation d’un logiciel macOS avant distribution.
Pour se conformer aux règles d’autorisation d’Apple, InDesign 2020 a activé un droit d’exécution renforcée qui vous permet de charger des modules externes tiers sans signature de code dans InDesign. Toutefois, les développeurs de modules distribuent généralement leurs modules sur le web via des programmes d’installation (.pkg ou .dmg). Sous macOS, Gatekeeper d’Apple met automatiquement en quarantaine tout fichier binaire non autorisé, faisant échouer l’exécution de vos programmes d’installation de modules. Pour plus de détails, voir InDesign et macOS 10.15 (Catalina). Par conséquent, il est nécessaire d’autoriser les programmes d’installation et fichiers binaires de modules externes même si les modules InDesign ne nécessitent aucune autorisation ou signature de code.
Conditions requises pour obtenir une autorisation
- Compte développeur Apple
- Xcode 10 ou version ultérieure
- Un mot de passe spécifique à l’application. Voici les instructions pour le générer.
Processus de génération de certificat
- Demandez un certificat (menu Trousseau d’accès > Assistant de certificat > Demander un certificat à une autorité de certification)
- Enregistrez le fichier .certSigningRequest sur le disque.
- Connectez-vous au Portail développeur Apple.
- Cliquez sur Certificats, identifiants et profils.
- Sélectionnez Developer ID : application pour créer un nouveau certificat.
- Chargez le fichier .certSigningRequest de l’étape 1 et terminez le processus. Téléchargez le fichier .cer présenté sur le disque.
- Sélectionnez Developer ID : programme d’installation et répétez les étapes 4 à 6.
- Chargez le même fichier .certSigningRequest de l’étape 1 et terminez le processus. Téléchargez le fichier .cer présenté sur le disque.
- Cliquez deux fois sur les deux certificats .cer téléchargés générés aux étapes 6 et 8 pour les importer dans le Trousseau.
Étapes d’autorisation pour les fichiers .pkg et .dmg
Cet exemple utilise le module d’exemple BasicDialog du SDK.
# Signature de code .InDesignPlugin
codesign --sign "Developer ID Application: <Nom du développeur>" --verbose=4 --deep --force --strict BasicDialog.InDesignPlugin # Vérification de la signature de code
codesign -dv --verbose=4 BasicDialog.InDesignPlugin - # Créer un fichier .pkg ou .dmg en ajoutant le fichier signé .InDesignPlugin ci-dessus dans le package/programme d’installation
# Signer vos programmes d’installation (par exemple, des fichiers .dmg ou .pkg)
productsign --sign "Developer ID Installer: <Nom du développeur>" ./BasicDialog.pkg ./BasicDialogSigned.pkg # Vérification de la signature de code
pkgutil --check-signature BasicDialogSigned.pkg # Envoyer pour autorisation
xcrun altool --notarize-app --primary-bundle-id "com.demo.plugin" --username "votre-apple-id@xyz.com" --password "xxxx-xxxx-xxxx-xxxx" --file BasicDialogSigned.pkg # Vérifier l’état de l’autorisation en ligne (l’étape 6 devrait renvoyer Request UID)
xcrun altool --notarization-info <Request UID> --username "votre-apple-id@xyz.com" --password "xxxx-xxxx-xxxx-xxxx" # Agrafer le fichier autorisé pour une utilisation hors ligne
xcrun stapler staple BasicDialogSigned.pkg # Vérifier si l’agrafe est en place
stapler validate --verbose BasicDialogSigned.pkg