12

自動ビルド ツールのキーチェーン検索リストに .keychain ファイルを追加する必要があります。現在、私はsecurity list-keychainsコマンドを使用しています:

list-keychains [-h] [-d user|system|common|dynamic] [-s [keychain...]]
        Display or manipulate the keychain search list.

このコマンドを使用すると、キーチェーン検索リスト全体を設定できますが、別のキーチェーンを単純に追加する方法は提供されません。したがって、キーチェーンの追加は 2 ステップのプロセスになります。

  1. list-keychains を実行し、出力を解析します
  2. 次に、次のようなことを行いますlist-keychains -s ${existing_chains} ${new_keychain}

これは機能しますが、複雑すぎるように見え、競合状態が発生します。

また、検索リストに追加されるようですが、スクリプトやヘッドレス環境でopen my.keychainのようなコマンドの使用を避ける傾向があります。open

キーチェーンを検索リストに追加するためのより簡単またはより良い方法はありますか?

4

4 に答える 4

2

どの自動化ツールを使用していますか? TomcatでJenkinsを使用してiPhone用にビルドする際にも同様の問題がありました。シェルスクリプトにキーチェーンを追加しようとしましたが、せいぜい非常に不安定であることがわかりました.

最後に、ビルド プロセスを LaunchDemons ではなく LaunchAgents 経由で実行するように切り替えることで、この問題を回避しました。このようにして、ビルド ツールはユーザー コンテキストで実行され、信頼性が大幅に向上しました。

これはあなたにとって可能性ですか?もしそうなら、私はより詳細を提供することができます。

于 2012-05-16T18:04:30.653 に答える
0

私が知っているより良い方法はありません-しかし、おそらくcreate-keychainあなたが望むことをするようです:

security create-keychain -h

戻り値:

Usage: create-keychain [-P] [-p password] [keychains...]
    -p  Use "password" as the password for the keychains being created
    -P  Prompt the user for a password using the SecurityAgent
Use of the -p option is insecure
        Create keychains and add them to the search list.
于 2017-04-11T14:27:12.517 に答える