1

У меня есть непривилегированный пользователь, которого я создал для запуска Tomcat 8 в качестве службы. Tomcat запускает Jenkins, который используется для предоставления заданий, где члены моей команды могут загрузить файл .ipa и профиль обеспечения, а затем заново подписать файл .ipa. Дженкинс запускает сценарий оболочки всякий раз, когда он повторно подписывает файл .ipa. Этот сценарий оболочки был недавно обновлен и теперь вызывает команду безопасности, что приводит к следующей ошибке:

безопасность: сбой импорта сертификата: не удалось найти цепочку ключей по умолчанию.

Мне нужно установить цепочку ключей по умолчанию для моего непривилегированного пользователя Tomcat.

Как я могу добавить цепочку ключей по умолчанию для непривилегированного пользователя или чтобы этот пользователь использовал эту цепочку ключей?

Я не уверен, нужно ли мне запускать команду или указывать цепочку для ключей в моем tomcat.plist.

1 ответ1

0

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

security create-keychain -p temp "temp.keychain"
security add-certificates -k "temp.keychain" "ios_distribution.cer"
security unlock-keychain -p temp "temp.keychain"

security cms -D -k "temp.keychain" -i "blah.mobileprovision" > <entitlements>

...do some stuff...

security delete-keychain -h "temp.keychain"

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

default-keychain [-h] [-d user|system|common|dynamic] [-s [keychain]]

Ex.

default-keychain -h "temp.keychain"

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .