Подтвердить что ты не робот

Gatekeeper подписывается для OSX DMG за пределами OSX/XCode/Mac App Store?

От взгляда на ноты для предстоящей версии OSX (после OSX Lion), похоже, что все DMG/установщики должны быть подписаны, даже если они не распространяются через магазин Mac App.

Я не смог найти инструмент командной строки для этого подписания, или много документации о получении сертификата подписи без отправки в App Store.

Может ли кто-то проливать свет: 1) Как получить сертификат без распространения вашего приложения через Mac App Store? 2) Как подписать DMG без использования встроенных инструментов XCode (предпочтительнее кросс-платформенный инструмент)?

Спасибо!

4b9b3361

Ответ 1

Кодексация подробно описана здесь и здесь - в основном вам нужно получить сертификат, а затем вы можете подписать ваше выражение... AFAIK в настоящее время не имеет официальных документов о подписании самого DMG. Что касается вашего второго вопроса (кросс-платформенная подпись), такого инструмента нет (по крайней мере, никто из них официально не поддерживается Apple). Что касается информации о будущих версиях OS X, я настоятельно рекомендую просить о соответствующих Apple-форумах (обычно есть также форумы для связанных с NDA вещей).

Ответ 2

Это очень просто:

CODESIGN_IDENTITY='Name of Code Sign Cert' # Found in Keychain Access

codesign -s "$CODESIGN_IDENTITY" -v path/to/YourApp.app

Затем на dmg:

codesign -s "$CODESIGN_IDENTITY" -v path/to/YourApp.dmg

Это работает даже с DMG, доступным только для чтения, например, UDZO.

Ответ 3

Подписывание образов дисков (Источник: Apple)

Изображения дисков могут быть подписаны с помощью инструмента codeign на macOS 10.11.5 и более поздних версиях. Это позволяет проверять весь образ диска при помощи Gatekeeper при первом подключении.

Gatekeeper также проверит содержимое образа диска.

Образы дисков должны быть подписаны только с идентификатором вашего идентификатора удостоверения разработчика.

В macOS Sierra и позже spctl можно использовать для оценки подписи образа диска, например:

$spctl -a -t open --контекстный контекст: primary-signature -v MyImage.dmg /Users/me/Downloads/MyImage.dmg: принятый источник = идентификатор разработчика

Примечание. Образ диска, подписанный на OS X 10.11.5 или 10.11.6, может не поддаваться повторной подписке. В этой ситуации операция будет успешной, но подпись будет недействительной. Если вы столкнулись с этим условием, подпишите новую (неподписанную) копию изображения на macOS Sierra или позже.