web-dev-qa-db-ja.com

配布証明書に秘密鍵を追加するにはどうすればよいですか?

まあ、私はそれの秘密鍵にリンクされた私の開発者証明書を持っています。正常に動作します。

ディストリビューターのiOSプロファイルをダウンロードしましたが、有効な署名IDが見つかりませんと表示されます。

そのため、証明書を確認しました。正確には、開発者証明書は秘密鍵とリンクされていますが、配布証明書はリンクされていません。この証明書に秘密鍵をリンク/追加するにはどうすればよいですか?

これにより、「有効な署名IDが見つかりません」という問題が解決されますか?

59
Pau Senabre

はい、表示されるエラーは、アプリの署名に使用しようとしている配布証明書に関連付けられている秘密キーがMacにないことを意味します。

配布証明書を要求したコンピューターが使用可能かどうかに応じて、2つの解決策があります。

配布証明書を要求したコンピューターが利用可能な場合(または配布資産のバックアップがどこかにある場合)

  1. 配布資産が生成されたコンピューターから、Xcodeを開きます。
  2. ウィンドウ、オーガナイザーをクリックします。
  3. [チーム]セクションを展開します。
  4. チームを選択し、「iOS配布」タイプの証明書を選択し、[エクスポート]をクリックして指示に従います。
  5. エクスポートしたファイルを保存して、コンピューターに移動します。
  6. 手順1〜3を繰り返します。
  7. [インポート]をクリックし、以前にエクスポートしたファイルを選択します。

配布プロファイルが作成されたコンピューターにアクセスできなくなった場合(およびバックアップがない場合)

証明書を取り消して、新しい証明書を作成する必要があります。

配布証明書を生成するために、チーム管理者またはエージェントにいくつかの特権を与えるよう依頼する必要がある場合があります。十分な権限を取得したら、次の手順を実行します(2013年5月15日現在):

  1. このWebページにアクセスします。 https://developer.Apple.com/devcenter/ios/index.action
  2. [メンバーセンター]をクリックして、iOS開発者の資格情報を入力します。
  3. [証明書、識別子、およびプロファイル]をクリックします。
  4. [iOSアプリ]セクションの下の[証明書]をクリックします。
  5. 左側の[証明書]セクションを展開し、[配布]を選択して、配布証明書をクリックします。
  6. [取り消し]をクリックして、指示に従います。
  7. プラス記号をクリックして、新しい証明書を追加します。
  8. [App Store and Ad Hoc]オプションを選択し、[続行]をクリックします。
  9. Webページに印刷されている手順に従います。それには、Macでキーチェーンアプリケーションを開き、そこから証明書署名要求を生成する必要があります。続行をクリックします。
  10. .csrファイルをアップロードして、[続行]をクリックします。
  11. 配布用の証明書が生成されます。ダウンロードしてダブルクリックし、キーチェーンに統合します。

Xcodeを再度開き、プロジェクト構成をチェックして、「iPhone配布」証明書を選択できるかどうかを確認します(つまり、グレー表示されていません)。

84
Daniel Martín

既存の回答が作成されて以来、Xcodeのインターフェイスが更新され、正しくなくなりました(特に[ウィンドウ]、[オーガナイザー] // [チームの展開]セクションステップ)。現在、既存の証明書をインポートする手順は次のとおりです。

選択した証明書をエクスポートするには

  1. Xcode>環境設定を選択します。
  2. ウィンドウの上部にある[アカウント]をクリックします。
  3. 表示するチームを選択し、[詳細の表示]をクリックします。
  4. Controlキーを押しながら「署名ID」テーブルでエクスポートする証明書をクリックし、ポップアップメニューから「エクスポート」を選択します。

Export certificate demo

  1. [名前を付けて保存]フィールドにファイル名を入力し、[パスワード]フィールドと[確認]フィールドの両方にパスワードを入力します。ファイルは暗号化され、パスワードで保護されています。
  2. 保存をクリックします。ファイルは、指定した場所に拡張子.p12で保存されます。

ソース(Appleのドキュメント)

インポートするために、Xcodeのlet-me-help-youメニューが.p12ファイルを認識しないことがわかりました。代わりに、キーチェーンに手動でインポートしてから、Xcodeをビルドして、文句を言わずにアーカイブしました。

40
andrewb

Xcode 9では、インターフェイスが更新され、問題を解決する方法は次のとおりです。

  1. Xcode> Preferencesを選択します。
  2. ウィンドウ上部のAccountsをクリックします。
  3. 表示するteamを選択します
  4. 歯車のアイコン()左下。

enter image description here

  1. Export Apple Id and Code Signing Assets
  2. [名前を付けて保存]フィールドにファイル名を入力し、[パスワード]フィールドと[検証]フィールドにパスワードを入力すると、次のようなウィンドウが表示されます。

enter image description here

  1. 歯車のアイコン()-> [インポート]をクリックします->手順6でエクスポートしたファイルを選択します
22
Jorge Casariego

このサイトでは、あなたがする必要があることをステップごとに説明します 証明書、識別子、プロファイル そしてあなたの質問として

"Valid Signing identity not found"?

プロビジョニングプロファイルでコードベースに署名するために使用された秘密キーが必要です。 。お持ちでない場合は、iOS開発者ポータルで新しい署名リクエストを生成できます。

For Export:

Xcode-> Organizer、チームを選択します。エクスポートをクリックします。ファイル名とパスワードを指定して、[保存]をクリックします。

For Import:

Xcode-> Organizer、チームを選択します。インポートをクリックします。コード署名アセットを含むファイルを選択します。ファイルのパスワードを入力し、「開く」をクリックします。

3
Buntylm

私がやったことは、私のMacコンピュータから配布用の新しい証明書を作成し、このMacコンピュータからも署名IDを与えたということです

0
Logic

開発者証明書の場合、開発者の.mobileprovisionプロファイルを作成し、インストールしてXCodeに追加する必要があります。アドホック配布プロファイルを使用してアプリを配布する場合は、キーチェーンにAdHoc Distribution証明書と秘密キーをインストールする必要があります。

証明書を作成していない場合は、 作成する手順 itです。チームの誰かによって既に作成されている場合は、証明書と秘密キーを共有するように依頼してください。その誰かがあなたのチームにいない場合は、開発者アカウントから証明書を取り消して、新しい証明書を作成できます。

0
Amar

xcode5オーガナイザーはチームセクションが存在しないためです。しかし、大胆な文が私にとっての答えでした。問題のあるMacを復元してインポートする別のMacがあります。今はすべて大丈夫です。

0
Kursat Turkay

「有効な署名IDが見つかりません」これは、配布証明書の秘密キーがないためです。

配布証明書が元々別のMacで作成された場合、そのMacからこの秘密キーをインポートする必要がある場合があります。この秘密キーは、プロビジョニングポータルからダウンロードできません。

正しい秘密鍵をMacにインポートすると、XCodeのオーガナイザーは既にダウンロードした配布プロファイルを「有効なプロファイル」として認識します

ただし、それらのプロファイルを作成した元のMacにアクセスできない場合は、プロファイルを取り消すしかありません。

0
sleepwalkerfx