web-dev-qa-db-ja.com

配布証明書/秘密鍵がインストールされていません

Xcode 9.1を使って、iOSアプリを作成した後、それをアーカイブしてベータテストのためにappStoreにアップロードしたいと思います。しかし、Upload to the App Store...ボタンをクリックしてAutomatically manage signingを選択すると、次のような問題が発生します。

「私の名前」にはiOS配布証明書が1つありますが、その秘密鍵はインストールされていません。

私はなぜこの「秘密鍵がインストールされていない」のかわかりませんが、配布証明書が別のコンピュータか何かで作成された可能性があります。いかなる場合でも:

不足している秘密鍵を取得してインストールする最も簡単な方法は何ですか?物事を機能させるために。

57
Michel

あなたはone配布証明書しか持てません。それは、Appleに知られている公開鍵を、あるコンピュータのキーチェーンにある秘密鍵と結び付ける。この配布証明書が別のコンピュータで作成された場合、秘密鍵はそのコンピュータのキーチェーンにあります。そしてこの配布証明書はそれなしでは機能しません。

そのため、このコンピュータでこの配布証明書を使用するには、that computer、Keychain Accessを開く、秘密鍵の検索とエクスポート、メール送信、またはその他の方法でのやりとり--- this computerを実行します。このコンピュータのキーチェーンにインポートします。

Xcodeの「アカウント」設定パネルに移動してチームをダブルクリックすると、これを支援するダイアログが表示されます。配布用証明書が表示されていて、「キーチェーンにはない」と表示されている場合は、その証明書をcontrolキーを押しながらクリックするとメニュー項目が表示されます。その人はこれと同じインポートを使用して証明書のエクスポートを選択し、エクスポートした証明書を電子メールで送信できます。

どちらの方法でも、秘密鍵またはエクスポートされた証明書はパスワードで保護されます。あなたはそれを使うためにパスワードを知る必要があるでしょう。

44
matt

ステップ1: - xcode - > product - > archives - >クリック証明書管理 enter image description here

ステップ2: - IOS配布を追加する enter image description here

172
Tanjim3

この回答は、 "One Man"チームが "Team"に関する情報を読みすぎずにこの問題を素早く解決するためのものです

ステップ1)Webブラウザに行き、開発者アカウントを開きます。証明書、識別子、およびプロファイルに移動します。証明書/製造を選択します。秘密鍵が欠落していた証明書がそこにリストされているのがわかります。取り消しをクリックします。指示に従ってこの証明書を削除します。 enter image description here ステップ2)それはそれだ!あなたのアプリを検証するためにXcodeに戻ります。新しい証明書を生成するように求められます。今すぐあなたのアプリを喜んでアップロードします。

9
Paul

編集:私は私の答えを修正しているので、私は他のコンピュータが死んでいると思った:

最初のコンピュータから秘密鍵を使って証明書をエクスポートし、新しいコンピュータにインポートする必要があります。

私はiCloudのやり方、iCloudへのバックアップ、そして新しいコンピュータへの取り込みを好む。

何らかの理由でそれができない場合は、アップルの開発者サイトで証明書を取り消してから、Xcodeに新しい秘密鍵を作成させます。新しい秘密鍵も作成して、キーチェーンに保存します。必ず自分の好きな方法でバックアップしてください

9
Yitzchak

新しい製造証明書を追加します ここ 、次に.cerファイルをダウンロードしてダブルクリックし、それをキーチェーンに追加します。

Xcodeを再起動することを忘れないでください。

6
fujianjin6471

新しいコンピュータで証明書を使用しているかどうか。最も簡単な方法は、プロジェクトに関連する以前の証明書を取り消すことです。その後、ストアに再度アップロードしてください。 Xcodeは新しいものを生成します。

4
Chinedu Etoh

developer.Apple.comのすべての配布証明書を失効させ、Xcodeでアプリを検証すると、今後使用するためにキーをエクスポートできるようになった後で新しい配布証明書を作成することができます。

これは私のために働きます。

3
Sohaib Siddique

これを経験した他の誰にとっても、上記の答えは正しいですが、特に複数の証明書がある場合は、やや混乱を招く可能性があります。これらは私が取ったステップでした:

1)まず、実際の配布証明書に含まれている秘密鍵が欠落している日付をメモします。次に、他のコンピュータのキーチェーンアプリケーションに移動して、検索バーにIOSと入力します。 IOS開発者キーと配布キーがすべて表示されるので、正しいキーを見つける必要があります。

2)それぞれのIOS Distributionエントリの右矢印をクリックして証明書を表示し、正しい日付の証明書を見つけて、右クリックしてエクスポートを選択してエクスポートします。

3)それからそれを新しいコンピュータのキーチェーンにインポートするだけで、少なくともXCode 9.3ではそれを即座に認識してエラーを修正します。

2
Sam