授权Jenkins解锁钥匙串的权限

3

我正在尝试为xcode设置Jenkins,但是我一直遇到证书错误。

在我的shell脚本中,我有这个命令:security unlock-keychain $KEYCHAIN

但由于Jenkins正在以用户“jenkins”运行,因此在解锁钥匙串时似乎缺乏权限,会打印出这个错误:

[workspace] $ /bin/sh -xe /var/folders/lD/lDiU3VbfHpm-KUHY26PrX++++Do/-Tmp-/hudson2556417005809365518.sh
+ sh build.sh
security: SecKeychainUnlock /Users/vb_admin/Library/Keychains/login.keychain: Could not write to the file. It may have been opened with insufficient access privileges.

任何解决这个问题的想法都将不胜感激。
提前致谢!

你是否将Jenkins作为LaunchDaemon运行?如果是,你可能会在这个问题中找到答案(https://dev59.com/NWw15IYBdhLWcg3wGn9c#9482707),特别是这个(https://dev59.com/NWw15IYBdhLWcg3wGn9c#9482707),它为我解决了类似的问题。 - amadour
2个回答

1

要么给用户'jenkins'更多的权限,要么在您的shell脚本中授予文件适当的权限。就错误显示而言,它表示'写入'权限不可用。


0

将证书安装到jenkins用户的钥匙串中,而不是处理文件系统安全性并可能让任何有权访问jenkins用户的人都能访问vb_admin用户的整个钥匙串,这是给jenkins用户访问证书的最佳方法。

security <CERT_FILE> import -k $HOME/Library/Keychains/login.keychain -Tcodesign


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接