Подтверждение подлинности модулей InDesign для разработчиков сторонних модулей

Подтверждение подлинности указывает на то, что подписанное разработчиком приложение, которое вы распространяете, было проверено компанией Apple на отсутствие вредоносных компонентов. Более подробные сведения о правилах и требованиях для подтверждения подлинности Apple см. в разделе Подтверждение подлинности ПО для macOS перед распространением.

В целях соблюдения требований Apple для подтверждения подлинности в продукте InDesign 2020 был включен режим hardened runtime entitlement, позволяющий загружать в InDesign сторонние модули без необходимости подписывать их код. Однако разработчики модулей обычно распространяют их через программы установки (.pkg или .dmg). Функция Apple Gatekeeper в macOS автоматически помещает в карантин все двоичные файлы, подлинность которых не была подтверждена, поэтому запустить программы установки модулей не удастся. Дополнительные сведения приведены в разделе InDesign и macOS 10.15 (Catalina).  Таким образом, возникает необходимость в подтверждении подлинности программы установки и двоичные файлы модулей, несмотря на то что InDesign не требует наличия подтверждения или подписи кода модуля.

Требования подтверждения подлинности

Процесс создания сертификата

  1. Запросите сертификат (меню Связки ключей > Помощник сертификации > Запрос сертификата у бюро сертификации)
  2. Сохраните файл .certSigningRequest на диск.
  3. Войдите в портал Apple Developer.
  4. Выберите Сертификаты, идентификаторы и профили.
  5. Выберите Developer ID Application, чтобы создать новый сертификат.
  6. Отправьте файл .certSigningRequest из шага 1 и завершите процесс. Скачайте результирующий файл .cer на диск.
  7. Выберите Developer ID Installer и повторите шаги 4-6.
  8. Отправьте тот же файл .certSigningRequest из шага 1 и завершите процесс. Скачайте результирующий файл .cer на диск.
  9. Дважды щелкните на каждом из сертификатов .cer, которые были созданы на шагах 6 и 8, чтобы импортировать их в цепочку сертификатов.

Действия по подтверждению подлинности для файлов .pkg и .dmg

В данном примере используется модуль BasicDialog из SDK.

  1. # подпишите код .InDesignPlugin

    codesign --sign "Developer ID Application: <имя разработчика>" --verbose=4 --deep --force --strict BasicDialog.InDesignPlugin
  2. # проверьте подписание кода

    codesign -dv --verbose=4 BasicDialog.InDesignPlugin
  3. # создайте файл .pkg или .dmg, добавив подписанный .InDesignPlugin в пакет или программу установки
  4. # подпишите программы установки (.dmg или .pkg)

    productsign --sign "Developer ID Installer: <имя разработчика>" ./BasicDialog.pkg ./BasicDialogSigned.pkg
  5. # проверьте подписание кода

    pkgutil --check-signature BasicDialogSigned.pkg
  6. # отправьте файл на подтверждение подлинности

    xcrun altool --notarize-app --primary-bundle-id "com.demo.plugin" --username "your-apple-id@xyz.com" --password "xxxx-xxxx-xxxx-xxxx" --file BasicDialogSigned.pkg
  7. # состояние подтверждения можно проверять в сети (UID запроса возвращался на шаге 6)

    xcrun altool --notarization-info <UID запроса> --username "your-apple-id@xyz.com" --password "xxxx-xxxx-xxxx-xxxx"
  8. # скрепите подтвержденный файл для использования в автономном режиме

    xcrun stapler staple BasicDialogSigned.pkg
  9. # проверьте, что операция прошла успешно

    stapler validate --verbose BasicDialogSigned.pkg

Adobe, Inc.

Получайте помощь быстрее и проще

Новый пользователь?