Гейткипер подписывает для OSX DMG за пределами OSX / XCode / Mac App Store? - PullRequest
17 голосов
/ 16 марта 2012

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

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

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

Спасибо!

Ответы [ 3 ]

4 голосов
/ 02 января 2014

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

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.

4 голосов
/ 14 апреля 2012

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

2 голосов
/ 19 августа 2016

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

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

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

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

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

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

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

...