7

私は xcode プロジェクト [2] のリモート/自動ビルド [1] を行っています。アプリに署名するために、ビルドの前にこの行を追加します。

security unlock-keychain -p keychainpassword

これは正常に機能し、証明書が保存されている SYSTEM キーチェーンのロックを解除しますが、ビルド エージェントが実行されているユーザーのパスワードが team-city インターフェイスで公開され、すべての人に公開されます。

ビルド プロセスはログイン ユーザーとして実行され、自己完結型です...パスワードを入力せずにシステム/デフォルト キーチェーンのロックを解除する方法はありますか?

証明書を (システムではなく) ログインのキーチェーンに移動した場合、パスワードでロックを解除する必要があるのでしょうか?

これはまったく可能ですか?または、損害を与えることができず、ビルドして他に何もせず、そのユーザーのパスワードを公開するだけのユーザーをセットアップする必要があります..

[1] Teamcity を使用していますが、無関係です。

[2] iPhone プロジェクトですが、やはり無関係です。

4

2 に答える 2

2

通常の(管理者以外の)ユーザーでビルドし、そのユーザーにパスワードを持たないようにする必要があります。次に、ビルド システムでそのユーザーとして自動ログインできます。

もう 1 つの方法は、パスワードを環境変数に保存することですが、これではほとんどパスワードが隠されません。

パスワードのない通常のユーザーがいて、証明書をログイン キーチェーンに追加すると、コード署名を含め、問題なくリモート/自動/無人でビルドできるはずです。

于 2011-04-07T04:51:20.510 に答える
0

security unlock-keychainパスワードの独自のプロンプトで。

于 2015-03-10T04:49:25.127 に答える