无密码解锁OSX钥匙串?

问题描述:

我正在做我的xcode项目[2]的远程/自动构建[1],为了签署我的应用程序,我在构建之前添加了这行。无密码解锁OSX钥匙串?

security unlock-keychain -p keychainpassword 

这工作得很好,并解锁系统钥匙串,其中荣誉证书存储,但它暴露了其生成代理是在球队城市运行界面都可以看到用户的密码。

构建进程正在运行作为登录的用户,并且是自包含的......是我有办法可以解除系统锁定/默认钥匙串不提供密码?

我只是有一个想法,如果我移动的证书到登录的钥匙串(而不是系统),我还会有一个密码才能解锁?

这可能吗?或者我应该设置哪些不能做任何损害,只是建立和别的什么也不做,揭发该用户的密码的用户..

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

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

+1

如果它真的对你那么重要,你可以写一个小的应用程序,解锁钥匙串,并从只读用户和所有其他人不能访问文件中读取密码。这样密码就不会在进程列表中暴露。 – 2010-06-19 16:49:14

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

另一种方法是将密码存储在环境变量中,但几乎不能隐藏密码。

如果你有没有密码普通用户,并且添加了证书登录钥匙串,你应该能够建立远程/自动/无人值守,没有问题,包括代码签名。

security unlock-keychain自身的提示输入密码。