iOS のコード署名

この記事では、iOS のコード署名について説明します。 ラップ プロジェクト の作成・構築時に プラットフォーム の 1 つとして iOS を選択した場合、アプリを iOS 用に署名する必要があります。

重要

Xcode を使用してラップされた iOS 用モバイル アプリにデジタル署名することはサポートされていません。 iOS 用のラップされたモバイル アプリ パッケージに正しく署名するには、次の手順に従います。

前提条件

開始するには、以下の情報が必要です:

  • App ID
  • デバイス UDID (テストおよび開発目的のみ)

iOS のコード署名には macOS デバイスも必要です。

Mac を準備する

次の構成で Mac をセットアップします。

  1. Xcode をインストールします。 詳細情報: Xcode
  2. macOS 用の PowerShell をインストールします。 詳細情報: macOS に PowerShell をインストールする
  3. Apple 開発者プログラムに登録する
  4. 組織内でアプリを配布するには、Apple エンタープライズ開発者プログラム にサインアップする必要があります。

アプリ ID を作成する

  1. https://developer.apple.com にアクセスして アカウント タブを選択し、開発者アカウントにサインインします。

    アカウント タブ。

  2. 証明書、ID、プロファイル > 識別子 にアクセスします。

  3. + を選択して、新しい識別子を作成します。

    新しい識別子の作成。

  4. アプリ ID を選択し、続行 を選択します。

    新しい識別子の登録。

  5. 種類にアプリ を選択し、続行 を選択します。

  6. アプリ ID を登録します:

    アプリ IDの登録。

    1. 説明 - アプリの名前です。
    2. バンドル ID - 明示的なバンドル ID を選択します。
    3. ラップ プロジェクトの作成 時に使用したバンドル ID を入力します。 詳細情報: バンドル ID
    4. 次の機能を有効にします:
      • 関連するドメイン
      • iCloud
      • NFC タグの読み取り
      • プッシュ通知
    5. 続行 を選択します。
  7. アプリ ID を確認して登録します。

配布する証明書の作成

配布証明書を作成するには、先に新しい証明書署名の要求を作成します。

証明書署名要求 (CSR) の作成

  1. Mac で、アプリケーション フォルダ > ユーティリティ > キーチェーン アクセスを開きます。

  2. キーチェーン アクセス > 証明書アシスタント > 認証局に証明書を要求する を選択します。

    CA に証明書を要求します。

  3. 以下のように 証明書情報 を記入し、継続する を選択してください。

    1. ユーザーのメールアドレスフィールドに、この証明書で識別するための Apple ID の電子メール アドレスを入力します。
    2. 一般名 フィールドで、自身の名前を入力します。
    3. リクエスト グループで、ディスクに保存を選択します。
    4. ファイルを Mac に保存します。

配布証明書を作成する

  1. https://developer.apple.comアカウント タブを選択し、開発者アカウントにサインインします。

  2. 証明書、ID、プロファイル > 証明書 にアクセスします。

    1. + を選択して、新規証明書を作成します。

    2. App Store とアドホック > 継続を選択します。

      証明書、識別子、プロファイル

      注意

      エンタープライズ開発者アカウントをお持ちの場合は、エンタープライズ配布証明書を作成するオプションがあります。

  3. 前の手順で生成された証明書署名要求 (CSR) ファイルをアップロードします。

    証明書をアップロードする。

  4. 続行を選択し、証明書を Mac にダウンロードします。

  5. ダウンロードした .cer ファイルをダブルクリックして、キーチェーン アクセスにインストールします。

  6. 証明書の名前を忘れないようにしてください (通常は iPhone Distribution: Name (チーム ID))。 この値は、署名のために提供する必要があるコード署名の ID です。

IPA をインストールする必要があるすべてのデバイスを追加する

注意

この手順は、アプリを外部ユーザーに配布する場合にのみ必要です。 アプリが内部ユーザー専用の場合は必要ありません。

  1. https://developer.apple.comアカウント タブを選択し、開発者アカウントにサインインします。

  2. 証明書、ID、プロファイル > デバイス にアクセスします。

  3. + を選択し、1 つ以上のデバイスを登録します。

  4. デバイス名デバイス ID (UDID) を入力します。

    デバイスの登録。

  5. 保存 を選択します。

    ヒント

    UDID のリストをアップロードして、複数のデバイスを一緒に登録することもできます。

iOS プロビジョニング プロファイルの作成

  1. https://developer.apple.com にアクセスして アカウント タブを選択し、開発者アカウントにサインインします。

  2. 証明書、ID、プロファイル > プロファイル にアクセスします。

  3. + を選択して、新しいプロファイルを作成します。

  4. アドホック > 継続を選択します。

    アドホック。

    注意

    本番テストおよび開発の目的であれば、App Storeの配布方法を使用します。

  5. 以前に作成したアプリ ID を選択し、継続を選択します。

    アプリ ID。

  6. 以前に作成した証明書を選択し、継続を選択します。

    証明書を選択します。

  7. アプリをインストールするすべてのテスト デバイスを選択し、継続を選択します。

    デバイスの追加。

  8. プロビジョニング プロファイルを確認して名前を付けます。 プロビジョニング プロファイルの名前を書き留めます。

  9. プロファイルを生成して Mac にダウンロードします。

  10. ダブルクリックしてダウンロードしたファイル (*.mobileprovision) を開き、Xcode に登録します。

iOS アーカイブに署名する

  1. App Center からの iOS-Archive.zip ファイルをダウンロードして解凍します。 これにより、バンドル ID という名前のフォルダーが作成されます。 以下の例では、バンドル ID は com.single.wrap です。

  2. エンタープライズ証明書で署名する場合は、Xcode を使用してファイル Distribution-exportOptions.plist を開き、企業 へのファイル内にある 方法 の値を変更します。

注意

Enterprise 署名は、Key Vault 署名ではサポートされていません。

  1. ターミナルを開き、ディレクトリを展開していないフォルダーに変更します。

  2. pwsh と入力し、ターミナルで PowerShell を起動します。

  3. ./SignAndGenerateIPA.ps1 を実行し、値に "CodeSigningIdentity" と "ProvisioningProfilePath" のパラメーターを使用します。

    注意

    'CodeSigningIdentity' は、Apple 開発者 Web サイトで作成された証明書の名前です。 'CodeSigningIdentity' の値を検索するには、.mobileprovision ファイル (これはプロビジョニング プロファイルです) を選択し、詳細情報 を選択します。 下にスクロールして プレビュー を選択します。 'CodeSigningIdentity' 値は、.mobileprovision ファイルの 証明書 下の 名前 フィールドに保存されます。

    ヒント

    'ProvisioningProfilePath' は、前の手順 iOS プロビジョニング プロファイルの作成 で Apple 開発者 Web サイトからダウンロードしたプロビジョニング プロファイル ファイルへのパスです。 たとえば、コンピューターの /ユーザー/ユーザー名/ダウンロード/MyProvisioningProfile.mobileprovision にある可能性があります。

    PowerShell スクリプトを実行する。

  4. スクリプトが終了すると、com.single.wrap.ipa のような .ipa ファイルが作成されます。

    • コマンド ./SignAndGenerateIPA.ps1 が失敗した場合は、破損している可能性があるため、解凍したフォルダーとファイルを削除してください。 再度サインする前に iOS-Archive.zip を再度解凍します.。

    IPA パッケージ。

  5. 登録したデバイスに、Finder アプリを使用して .ipa ファイルをインストールします。 App Center などの配布サービスにパッケージをホストすることもできます。 Microsoft Intune を使用して配布するには、基幹業務アプリから Microsoft Intune に iOS/iPadOS を追加する を参照してください。 Intune アプリ保護サービスにアプリのアクセス権を付与する方法については、Intune アプリ保護サービスにアプリのアクセス権を付与する を参照してください。

参照