Я импортирую файл PEM
, содержащий общедоступные и закрытые ключи для моего идентификатора подписи кода с помощью следующей команды:
security import "${PEM_FILE}" -k ~/Library/Keychains/login.keychain -T /usr/bin/codesign -T /usr/bin/security
В OS X 10.11 El Capitan
я мог бы codesign
без подсказки:
codesign --force --sign "${IDENTITY_HASH}" --timestamp=none `mktemp`
Однако, поскольку другие имеют , OS X 10.12 Sierra
теперь требуется, чтобы вы set-key-partition-list
после import
:
security set-key-partition-list -S apple-tool:,apple: -s -k "${PASSWORD}" ~/Library/Keychains/login.keychain
Однако даже после set-key-partition-list
я все еще получаю диалоговое окно пользовательского интерфейса, запрашивающее разрешение на доступ к моему закрытому ключу для подписи кода:
Если я нажимаю Always Allow
, тогда будущие вызовы codesign
не запрашивают, но я никогда не хочу, чтобы этот диалог интерфейса отображался. Я хочу, чтобы все это было написано сценарием.
Почему set-key-partition-list
работает для других людей, а не для меня?