2

これが私のシナリオです。私は3人の開発者のチームで働いています。現在、iphone の開発を行っているのは私だけなので、この時点で 1 つのプロジェクトを作成してテストし、展開証明書を作成して、それをビルドしていくつかのデバイスに展開できるようにしました。1 人の開発者、1 つのアプリ、すべてが簡単です。ここに私の問題があります。

ここで、他の開発者の 1 人がソース コードをチェックアウトし、変更を加えて再デプロイする必要があり、私も開発に使用したコンピューターも近くにいないとします。見つけたものはすべて読みましたが、他の開発者が配布証明書と展開プロビジョニング プロファイルをダウンロードする必要があること、また、配布証明書の秘密鍵を .p12 形式にエクスポートして配布証明書に配置する必要があることを理解しています。機械。これはすべて、言われたとおりに機能します。

私が持っている質問と私が理解できないように見えるのは、私が作成した配布証明書が開発者の秘密鍵で署名されているということです。私がこれをエクスポートして彼らに渡すと、彼らは私の秘密鍵を持っているので、それはあなたが秘密にしておくべきものであり、私が他の開発するための安全な場所にあるからです。マシンまたは再インストールする必要がある場合に備えて、他の開発者が展開できるようにするためだけに提供するものではありません。逆に、彼らがアプリケーションを作成し、私が変更を加えてデプロイする必要がある場合も同様です。

どこでも答えを探しましたが、欠けているものを理解するために必要な正確な答えを見つけることができないようです。多分私はいくつかの本質的な概念を見逃しているだけです。

  • 自分ではなく会社の秘密鍵を使用して配布プロファイルを作成する方法はありますか? または、プロジェクトごとに配布証明書を作成する必要がある場合は、プロジェクトごとに名前を付けることができるキーです。
  • 配布証明書に添付されている個人の秘密鍵を共有することは間違っていますか?
  • 彼らは私の秘密鍵で何ができますか? 会社の秘密鍵か何かを持っているべきだと思います。

私はこれが長く続いていることを知っていますが、私はこの時点で本当に途方に暮れています. これは同様の別の投稿であり、少なくとも私が知る限り、私が知る限り、明確に答えられなかった同じ問題を抱えていた別の投稿にもリンクしています。

複数のチーム管理者が XCode 4.3 で配布用のアプリを作成できるようにしますか?

秘密鍵を共有せずに開発者のチーム全員がビルドおよびデプロイできる方法についての助けをいただければ幸いです。他の会社が単一のマシンから展開しているとは思えないので、単純だと思います。

ジョン

4

2 に答える 2

1

答えは(質問のように)やや長くなります:

1) 原則として、配布プロビジョニング プロファイル (アドホック、エンタープライズ InHouse、および AppStore) は、開発プロビジョニング プロファイルとは異なる証明書/キー ペアを使用しています。プロビジョニング ポータルでは、明確にマークされています (開発者証明書、配布証明書、プッシュ証明書など)。

2) 企業は、配布キーへのアクセスを制限する傾向があります。これは、配布キーの漏えいが重大なセキュリティ上の影響をもたらすためです (たとえば、誰かがマルウェアを使用してアプリケーションを配布しようとする可能性があるなど)。一般的には、1 人から 3 人の「署名者」を指名することです。

3) 1 対複数の配布証明書について: 配布証明書の数には制限があります (2 つだと思います)。また、配布プロビジョニング プロファイルの場合は、1 つだけを選択できます。したがって、2 つのキー/証明書を定期的に使用する場合は、同じアプリに対して 2 つのプロビジョニング プロファイルが必要になります。私を信じて!xcode は、この考えを後悔させます!

おまけ: 理論的には、新しいものを生成するデフォルトの動作ではなく、選択した秘密/公開キーのペアを使用して CSR (証明書署名要求) を作成できるはずです。詳細はこちら

于 2015-02-12T07:13:35.487 に答える
0

開発者の秘密鍵が配布証明書で使用されていません。上記のシナリオには 2 つの秘密鍵が関係しています。

Keychain Access を開き、ログイン キーチェーンを選択し、カテゴリで [My Certificates] を選択します。

1) 開発者の秘密鍵を別の開発者と共有する必要はありません。それはユニークであり、あなたの使用のみを目的としています。これをエクスポートする必要があるのは、新しいコンピューターに移行する場合のみです。Keychain Access アプリケーションでは、この証明書が「iPhone Developer: Your Name」として表示されます。

2) 配布証明書には別の秘密鍵があります。これは、ディストリビューション証明書要求を作成したコンピューター上にあり、「iPhone ディストリビューション: あなたの会社名」としてリストされているキーチェーン アクセス アプリケーションにあります。この証明書 (公開鍵と秘密鍵の両方を含む) をエクスポートして、誰かが既存のプロビジョニング プロファイルを使用してエンタープライズ ディストリビューションを作成できるようにする必要があります。これらのキーをエクスポートする方法については、https ://stackoverflow.com/a/9418712/600753 を参照してください。

上記の方法をお勧めしますが、他の開発者に別の配布証明書と別のプロビジョニング プロファイルを作成してもらうという方法もあります。このアプローチは、Xcode 内のプロビジョニング プロファイルの自動選択を混乱させる傾向があり、通常、価値があるよりも面倒です。

于 2015-01-06T22:11:51.710 に答える