Разрешить определенным приложениям доступ к цепочке для ключей с помощью командной строки - PullRequest
0 голосов
/ 31 января 2019

Я пытаюсь автоматизировать установку сертификата на кучу разных компьютеров Mac, чтобы я мог использовать любой из них с помощью Jenkins.Я видел, что вы можете сделать импорт:

sudo security import certName -P password

И вы также можете разрешить приложениям использовать цепочку для ключей во время установки:

sudo security import certName -P password -T /usr/bin/codesign

Но есть ли способ изменитьсуществующие установки из командной строки, поэтому мне не нужно повторно импортировать все сертификаты, которые я уже импортировал?Или можно просто повторно импортировать все, выполнив вторую команду на всех полях, и она просто обновит существующую установку сертификата?

В целом, общая проблема, которую я хотел бы решить, состоит в предотвращении запросовзапрашивать пароли каждый раз, когда я запускаю сборку с надписью «CodeSign хотел бы получить доступ к связке ключей» и т. д. А затем мне нужно ввести пароль и нажать «Всегда разрешать», чтобы снова его предотвратить.Но каждый раз, когда я обновляю сертификат, мне приходится снова проходить этот процесс.

Кто-нибудь когда-нибудь автоматизировал весь этот процесс раньше?Установка сертификата и предоставление приложениям доступа к цепочке для ключей без запроса пароля.

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

1 Ответ

0 голосов
/ 31 января 2019

Кажется, что эти три строки были тем, что мне было нужно (ответ найден здесь: security / codesign в Sierra: связка ключей игнорирует настройки управления доступом и запросы интерфейса пользователя для разрешения ):

security unlock-keychain -p password kaychainName.keychain

security set-keychain-settings keychainName.keychain

security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k password keychainName.keychain
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...