7

我正在对我的 xcode 项目 [2] 进行远程/自动构建 [1],为了签署我的应用程序,我在构建之前添加了这一行。

security unlock-keychain -p keychainpassword

这工作正常,并解锁了存储证书的 SYSTEM 钥匙串,但它暴露了在团队城市界面中运行构建代理的用户的密码,以供所有人查看。

构建过程以登录用户身份运行,并且是独立的......有没有一种方法可以在不提供密码的情况下解锁系统/默认钥匙串?

我刚刚有一个想法,如果我将证书移动到登录的钥匙串(而不是系统)中,我还需要用密码解锁它吗?

这可能吗?或者我应该设置一个不会造成任何损害的用户,只是构建而不做任何其他事情并公开该用户的密码..

[1] 使用 Teamcity,但无关紧要。

[2] iPhone 项目,但又无关紧要。

4

2 回答 2

2

您应该能够使用普通(非管理员)用户进行构建,并使该用户没有密码。然后,您可以在构建系统上以该用户身份自动登录。

另一种选择是将密码存储在环境变量中,但这几乎不会隐藏密码。

如果您有一个没有密码的普通用户,并且您将证书添加到登录钥匙串,您应该能够远程/自动/无人看管地构建,包括代码签名。

于 2011-04-07T04:51:20.510 回答
0

security unlock-keychain根据自己的提示输入密码。

于 2015-03-10T04:49:25.127 回答