Почему мой dmg с подписью кода заблокирован Chrome и Gatekeeper на Mac?

Я код подписал файл DMG и загрузил его в облачное хранилище Google. На моем Mac этот файл не считается опасным, но на других компьютерах Mac браузер Chrome блокирует загрузку файла, считая его вредоносным. При попытке установить dmg на любом компьютере Mac, кроме того, который использовался для его подписи, Gatekeeper блокирует установку. Неподписанная версия dmg работает нормально и не считается вредоносным ПО ни Chrome, ни Gatekeeper. В этом отношении я довольно новичок. Я не мог найти никаких причин.

Я выполнил этот вопрос SO, чтобы закодировать подпись dmg . Когда я проверил это с помощью следующей команды -

spctl -a -t open --context context:primary-signature -v path/to/dmg

Результат вышеуказанной команды -

path/to/dmg: accepted
source=Developer ID

person alamshafi2263    schedule 14.07.2019    source источник


Ответы (1)


Предполагая, что у вас есть действующий сертификат идентификатора разработчика, выданный Apple, ознакомьтесь с нотариальным заверением вашего приложения перед Распространение.

Начиная с macOS 10.14.5, все новые или обновленные расширения ядра и все программное обеспечение от разработчиков, впервые распространяемых с идентификатором разработчика, должны быть нотариально заверены для запуска. Начиная с macOS 10.15 нотариальное заверение требуется по умолчанию для всего программного обеспечения.

Перед развертыванием программного обеспечения вы должны также отправить его в Apple для нотариального заверения. Если вы сделали свой Developer ID совсем недавно, Gatekeeper не будет запускать ваше программное обеспечение с подписью кода без прикрепленного нотариального удостоверения.

У Apple есть хорошие инструкции о том, как сделать это из командной строки на странице Настройка рабочий процесс нотариального заверения (обязательно используйте параметры --timestamp и -o runtime с командой codesign).

Если у вас нет учетной записи Apple Developer (и вы используете, скажем, самозаверяющий сертификат), вы получите ее до подписания кода, нотариального заверения и распространения вашего программного обеспечения. После создания учетной записи см. Сохранение активов для подписи, чтобы узнать, как чтобы получить сертификаты, выпущенные Apple, на связку ключей.

person nfrasser    schedule 16.07.2019