macOS アプリケーションの署名
Follow this workflow to sign and notarize your macOS application during the build process.
読み終わるまでの所要時間 4 分最終更新 1ヶ月前
Unity Build Automation は、ビルドプロセス中に macOS アプリケーションの公証とステープルを実行することができます。これにより、アプリケーションが macOS 公証要件 を満たしていることを確認します。 ノート: Mac App Store を通じてアプリケーションを配布するには、公証は必要ありません。Mac App Store のアップロードプロセスには、公証と同様のコンテンツ検証が含まれます。詳細については、Mac App Store への配信 を参照してください。
Apple デバイスからの開発者 ID 証明書の作成
Apple デバイスで開発する場合は、Unity Build Automation を設定してアプリケーションの公証とステープルを実行することができます。 要件を満たすには、以下のステップに従います。- 開発者 ID 証明書を作成し、キーチェーンに追加します。この方法については、署名 ID を参照してください。
- キーチェーンから開発者 ID 証明書を個人情報交換 () 形式のファイルとしてエクスポートします。この方法については、Mac でのキーチェーンアクセスを使用したキーチェーン項目のインポートとエクスポート を参照してください。
.p12 - Apple 開発者アカウントからプロバイダーの短縮名を取得します。
- Membership Details (メンバーシップの詳細) に移動し、チーム ID を確認します。チーム ID をプロバイダーの短縮名として使用できます。
Windows または Linux デバイスからの開発者 ID 証明書の作成
Windows または Linux で開発する場合は、Unity Build Automation を設定してアプリケーションの公証とステープルを実行することができます。要件を満たすには、以下のステップに従います。- 開発者 ID 証明書を作成し、ダウンロードします。この方法については、署名 ID を参照してください。
- 開発者 ID 証明書を PKCS #12 個人情報交換 (.p12) ファイル形式に変換します。この方法については、Windows および Linux での開発者 ID 証明書から .p12 ファイルへの変換 を参照してください。
- Apple 開発者アカウントからプロバイダーの短縮名を取得します。
- Membership Details (メンバーシップの詳細) に移動し、チーム ID を確認します。チーム ID をプロバイダーの短縮名として使用できます。
Windows と Linux での開発者 ID 証明書から .p12 ファイルへの変換
.p12- コマンドラインインターフェースを開き、開発者 ID 証明書ファイルがあるディレクトリに移動します。開発者 ID 証明書をダウンロードしていない場合は、署名 ID を参照してください。
-
開発者 ID 証明書は、ファイル形式を使用します。このファイルを
.cerファイル形式に変換します。これを行うには、以下のコマンドを実行します。.pem- は、変換する開発者 ID 証明書ファイルです。
developer_identity.cer - は、出力するファイル名とファイルタイプです。
developer_identity.pem
openssl x509 -in developer_identity.cer -inform DER -out developer_identity.pem -outform PEM -
新しい秘密鍵を生成します。これを行うには、以下のコマンドを実行します。
- は、出力する秘密鍵のファイル名です。
mykey.key
openssl genrsa -out mykey.key 2048 -
ファイルを生成します。これを行うには、以下のコマンドを実行します。
.p12- はステップ 3 で生成した秘密鍵ファイルです。
mykey.key - はステップ 2 で生成した
developer_identity.pemファイルです。.pem
openssl pkcs12 -export -inkey mykey.key -in developer_identity.pem -out iphone_dev.p12
アプリケーションパスワードの生成
アプリケーションの公証を受けるには、Apple ID と、特定の形式のアプリケーション固有の一意のパスワードが必要です。 アプリケーションパスワードの生成方法については、アプリケーション固有のパスワードの生成方法 (Apple) を参照してください。生成するパスワードは、xxxx-xxxx-xxxx-xxxxUnity Build Automation による公証
Unity Build Automation で macOS アプリケーションを公証するには、以下のステップに従います。- Unity Dashboard で DevOps を開きます。
- Build Automation > Configurations (設定) を選択します。
- Target setup (ターゲット設定) ボタンをクリックします。
- Mac デスクトップユニバーサル ビルドターゲットを選択します。
- Credentials (認証情報) セクションで、Xcode バージョンを選択します。
- Unity Build Automation で OSX 公証を有効にします。
- バンドル ID を追加します。これはアプリケーションのコード署名時に使用される アプリケーション識別子 です。
- プロビジョニング認証情報を新しく追加 (リリース用) を選択します。
ノート: 以前に同じ組織の Unity Build Automation に一連の公証資格情報を提供している場合は、ドロップダウンリストからそれらを選択できます。 - 以下の詳細を入力します。
プロパティ | 説明 |
|---|---|
| Name (名前) | 認証情報の名前を入力します。これらの認証情報は、同じ組織で設定した追加のプロジェクトに使用できます。 |
| p12 File (p12 ファイル) | 前のプラットフォーム固有のステップで作成した |
| p12 Password (p12 パスワード) | |
| Entitlements File (エンタイトルメントファイル) (任意) | エンタイトルメントファイルをアップロードします。エンタイトルメントファイルをアップロードしない場合、Unity Build Automation は macOS アプリケーションが Hardened Runtime を実行するのに必要な最小のエンタイトルメントを使用します。この最小のエンタイトルメントについての詳細は、Entitlements を参照してください。 |
| Provider Short Name (プロバイダーの短縮名) | 前のプラットフォーム固有のステップのプロバイダーの短縮名を入力します。Apple ID が複数の組織に関連づけられている場合、この短縮名を追加しないと公証に失敗します。 ノート: Unity Build Automation で公証するときは、常にプロバイダーの短縮名を使用することを推奨します。 |
| Apple ID Username (Apple ID ユーザー名) | Apple ID ユーザー名を入力します。 |
| Apple ID Password (Apple ID パスワード) | アプリケーション固有 の Apple ID パスワードを入力します。Unity Build Automation では、ビルドの公証を試行するまで Apple の認証情報は検証されません。 |
| Confirm your Apple ID Password (Apple ID パスワードの確認) | Apple ID パスワードを入力します。 |
- 設定を保存します。
- 残りの ビルドターゲット設定 オプションが完了していることを確認します。
- Mac デスクトップユニバーサル ビルドターゲットのビルドを開始します。
--deep --force --verify --verbose --timestamp --options runtimecodesign環境変数
以下の環境変数はビルド設定で使用できます。使用するには、Advanced Settings (詳細設定) > Environment Variables (環境変数) に移動し、新しい変数を追加します。プロパティ | 値 | 説明 |
|---|---|---|
| FASTLANE_NOTARIZE_VERBOSE | True | アプリケーションの公証時に追加のログ出力を加えるには、 |
| FL_NOTARIZE_USE_NOTARYTOOL | False | |