2016-05-02 7 views
4

私は最近、iOS開発のための組織アカウントを持つグループに関与しました。開発中の複数のiOSアプリケーションを持つ組織は、iOS配布証明書をどのように管理する必要がありますか?

複数のチームがそれぞれ別々のiOSアプリケーションを開発しています。組織の「iOSディストリビューション」証明書をすべて使用する際に調整がないことを知ることに幾分驚きました。代わりに、開発者がビルドを提出する必要がある場合は、新しいものを作成し、必要に応じて1つ以上の既存のビルドを取り消します(Appleは、3つの限られた供給を同時に「ライブ」にするようです)。この練習のための正当化は、観測値の組み合わせのようだ:別のことではない(簡単に)使用可能(あなたはこのトピックに関するSOの周りにかなりの数の質問を見つけることができている

  • 配布証明書は1つの開発者によって作成されました。解決策は、証明書の秘密鍵要素も共有されていることを確認するように見えますが、この組織はまだオンボードにしていません。Exampleanother example;
  • xcode7は流通証明書を解読するのがずっと簡単なので、明らかにアップルの意図した方法です(xcode6はデベロッパーセンターに行く必要があるでしょう)。
  • 配布証明書は、アプリストア提出のかなり小さなウィンドウにのみ必要です。 appがappstoreに入ったら、配布証明書が取り消されるかどうかは違いがありません。
  • アップルは、「古い」、「新しい」、「最新」のいずれかを持っていて、「新しい」または「最新の」ものを取り消した場合、配布証明書の更新に関するいくらか奇妙な先入先出ルールを持っているようですあなたは "古い"を取り消すまであなたはまだ新しいものを作ることができません)。または、少なくとも、これらのルールは、さまざまなチーム/プロジェクト間で配布証明書の限られた在庫を分割することを望んでいたが、Appleが実際に提供するものに合わないことが判明した組織にとっては奇妙に思えます。

しかし、私はtesflightのビルドが非常に長い間有効ではないということと、ユーザーが無効な証明書についてのダイアログを表示したり、アプリケーションを持っていることがわかっています。テストフライトから消えていくテスタフライトテスターに​​なるはずです。 (実際には、同じ行に沿ってthis questionも参照してください)。

Appleがtestflightをアプリストアのインフラストラクチャの重要な部分と明示していることを考えれば、Appleが実際にやりたいことを意図した方法でこの組織が進んでいるとは思えません。 正しいことを洞察してくれる誰かが私に啓発してください。

私の用語が上記のいくつかではオフになっている場合は謝罪...私はちょうどこのものでおしゃぶりします。

答えて

4

正しい方法は、1つの配布証明書を持ち、秘密鍵を共有することです。私たちは、私たちの組織の間での開発/配布に必要な秘密鍵と証明書だけを含む小さなキーチェーンを共有しています。この「スタブ」キーチェーンをすべての開発マシンに追加することができます。バージョンコントロールにチェックインされていれば、誰にでも簡単にアップデートを送信することができます。パスワードで保護することもできます。その場合、Xcodeはコードネゴシエーションの際にロックを解除するように求めます。

実際に証明書を解読するのは実際には悪いことですが、IMOです。ご存じのように、チームの他の開発者が、特にTestFlightに関しては、アップルがそれを修正した可能性があることを最近別の開発者から聞いたことがありますが、それは簡単です。 (私は自分でそれを確認していない。)

+0

ありがとう、良いアプローチのように聞こえる。私は証明書失効を見たが、最近4月28日にtestflightを展開してしまった。だからもしAppleが何かを修正してしまったのなら、それは本当に最近だったはずだ。 – timday

+1

同様のアプローチを採用しました。最初に私たちは開発チームメンバーのほとんどから「管理者」の役割を削除し、「修正」ボタンをクリックすることで簡単に証明書を取り消すことはできませんでした。その後、チーム間で共有する配布証明書を作成しました。可能であれば、共有ビルドボックスでビルドを行うことも推奨します。 – toofah

+0

@jsd Appleが最近、複数の管理者を持つ組織アカウントの複数の配布証明書をサポートし始めたのかどうか疑問に思っています(私の開発者ポータルに2人のチーム管理者が2つの配布証明書を見ることができます)。または、あなたがあなたの答えをサポートしているアップルのドキュメントを提供してもよろしいですか?ありがとう – user3676224

関連する問題