iOSアプリのリモート署名サービス
ユーザーがアプリをOpenText Functional Testing Labにアップロードするときに再署名できるようにするには、管理者がiOS署名サービスをセットアップする必要があります。組み込みサービスまたはリモートサービスの使用を選択できます。このトピックでは、リモート署名サービスをセットアップする方法について説明します。iOS署名サービスの詳細については、iOS署名サービスを参照してください。
このセクションは、OpenText Core SDPおよびOpenText Core Functional Testing Labには関連していません。
始める前に
リモート署名サービスには、以下が必要です。
- ワイルドカードアプリIDを含むApple Developer証明書と開発プロビジョニングプロファイル。
Appleアセットの生成方法の詳細については、アプリに署名するためのiOSアセットを参照するか、Apple Developerのドキュメントを参照してください。iOSアプリの署名が必要な時期については、iOSアプリの署名をご覧ください。 - OpenText Functional Testing Labサーバーに接続する専用Macマシン。Macマシンが必要なシステム要件を満たしていることを確認してください。詳細については、サポートマトリックスを参照してください。
パッケージングサービスを使用して、エージェントに手動で署名したり、アプリに署名してパッケージ化したりすることもできます。詳細については、パッケージサービスを使用してiOSアプリを手動でパッケージ化するを参照してください。
リモート署名サービスをインストールする
自動署名を設定するときは、最初にサービスをインストールする必要があります。
サービスをインストールするには:
- iOSパッケージャーをMacマシンにダウンロードします。パッケージサービスは、ADM MarketplaceでOpenText Functional Testing Labのバージョンを選択することでダウンロードできます。
- iOSPackager.pkgをダブルクリックしてインストーラーを起動します (管理者権限が必要です)。
- Packagerサービスを次のように構成します。
- パッケージングサービスへの接続をSSLのみで行う必要がある場合は、SSLを有効にするを選択します。
- MacマシンのIPアドレスまたは完全修飾ドメイン名 (FQDN) を入力します。
- サービスに意味のある名前を付けます。
- アプリの署名に使用するiOS開発者証明書を選択します。証明書は、使用しているMacマシンにインストールされている必要があり、キーチェーンアクセスプログラムで確認できます。
- プロビジョニングプロファイルを選択します。
注: 開発プロビジョニングプロファイルは、上記で選択した証明書と同じApple Developerに属している必要があります。
- パッケージャーサービスのポートを指定します。
- ソフトウェアが正常にインストールされると、パッケージサービスが自動的に開始され、ブラウザーでUIが開きます。
/opt/FunctionalTestingLabForMobileAndWeb/packager/conf/<service name>/jetty
に移動します。- start.iniファイルを見つけます。ファイルの下部で、次の変更を行います。
変更前 変更後 --module=gzipjetty.port=<パッケージサービスポート> jetty.port=<パッケージサービスポート> - サービスを再起動します。
インストールに失敗したというエラーが表示されます。
- Macがスリープ状態にならないようにします。詳細については、Appleのドキュメントを参照してください。
- iOS署名サービスの設定は、[管理] > [設定] で定義してください。詳しくはiOS署名サービスを参照してください。
バージョン情報、パッケージングサービスの詳細を表示したり、ログをダウンロードしたりするには、パッケージャーUIの上にあるバージョン情報アイコンをクリックします。パッケージャーUIには、次の場所からアクセスできます。http/s://<packager server IP address>:port/instrumentation/
ヒント: パッケージングサービスを使用して、エージェントに手動で署名するか、アプリに手動で署名してパッケージ化します。詳細については、パッケージサービスを使用してiOSアプリを手動でパッケージ化するを参照してください。
トラブルシューティング
インストーラーがシステム要件との非互換性を検出したというエラーメッセージが表示された場合は、正しいバージョンのXcodeを使用していることを確認してください。
正しいXcodeバージョンを使用しているにもかかわらずこの問題が発生する場合は、インストーラーがXcodeを正しく見つけられない可能性があります。この問題を解決するには:
-
Active Developer Directoryを確認します。
ターミナルウィンドウを開き、次のコマンドを実行して、アクティブな開発者ディレクトリのパスを確認します。コードのコピーxcode-select --print-path
出力がXcodeコマンドラインツールディレクトリ (例: /Library/Developer/CommandLineTools) を指している場合、これが問題の原因である可能性があります。
-
管理者として次のコマンドを実行して、Active Developer Directoryを修正します (sudoには管理者パスワードが必要です)。以下のコマンドの <Xcode app path> を、Xcodeアプリケーションディレクトリへの実際のパスに置き換えます。このパスは通常、/Applications/Xcode.app/Contents/Developerです。
コードのコピーsudo xcode-select -s <Xcode app path>
-
これらの変更を行った後、iOS Packaging Serviceインストーラーを再度実行してみてください。
SSL接続
パッケージングサービスのインストール時にSSLを有効にするオプションを選択した場合は、OpenText Functional Testing Labとパッケージングサービスの間の信頼を確立する必要があります。
パッケージャーへの安全な接続を有効にするには:
- /opt/FunctionalTestingLabForMobileAndWeb/packager/Security/keystoreに移動し、.p12ファイルをOpenText Functional Testing Labサーバーにコピーします。
- OpenText Functional Testing Labサーバーマシンで、次のコマンドを実行して証明書をインポートします。
WindowsコードをコピーするLinux:<Path to your server installation folder>\server\jre\bin\keytool -importkeystore -srckeystore <name of file>.p12 -srcstoretype pkcs12 -srcstorepass password -srcalias hpmc -destkeystore <Path to your server installationfolder>\server\Security\keystore\trustStoreHpmc
コードをコピーする<Path to your server installation folder>/server/jre/bin/keytool keytool -importkeystore -srckeystore <name of file>.p12 -srcstoretype pkcs12 -srcstorepass password -srcalias hpmc -destkeystore <Path to your server installation folder>/server/Security/keystore/trustStoreHpmc
- iOSパッケージャー設定のパッケージャプロトコルとして、必ずhttpsを使用してください。詳細については、管理設定を参照してください。複数の共有スペース環境については、グローバル設定を参照してください。
追加のサービスを追加する
多くのデバイスやワークスペースで作業する場合、デバイスに異なる署名サービスを使用する必要がある場合があります。たとえば、iOS環境では、1つの証明書で各デバイスタイプの最大100台のデバイスにしかサインアップできません。さらに、別のグループの証明書に依存せずに、あるグループに署名サービスを提供したい場合があります。
管理者は、プライマリパッケージングサービスに加えて、複数のパッケージングサービスを定義し、それらを異なるワークスペースに割り当てることができます。詳細については、複数の署名サービスを参照してください。
パッケージサービスにサービスを追加するには:
- インストールフォルダー/opt/FunctionalTestingLabForMobileAndWeb/packager/に移動し、add new serviceスクリプトを実行します。
- 新しいサービスの名前とサービスポートを入力します。Apple Developer証明書の名前と、プロビジョニングプロファイルへのパスの入力を求められます。
このサービスは、パッケージャーUIに新しいタブとして追加されます。 -
iOSパッケージングサービス設定に追加サービスを追加します。詳細については、管理設定を参照してください。複数の共有スペース環境については、グローバル設定を参照してください。
サービスを削除するには、インストールフォルダー/opt/FunctionalTestingLabForMobileAndWeb/packager/に移動し、remove serviceスクリプトを実行します。
パッケージャーサービスを再起動またはアンインストールする
パッケージャーサービスをインストールすると、サービスが自動的に開始され、実行が継続されます。何らかの理由でサービスが実行されておらず、UIがhttp/s://<packager server IP address>:port/instrumentation/
で利用できない場合は、インストールフォルダー/opt/FunctionalTestingLabForMobileAndWeb/packager/でrestartスクリプトを実行してサービスを提供します。
サービスをアンインストールするには、/opt/FunctionalTestingLabForMobileAndWeb/packager/に移動し、uninstallスクリプトを実行します。
パッケージングサービスを更新する
キーチェーンのパスワードが変更された場合、または別の証明書またはプロビジョニングプロファイルを使用する場合は、パッケージングサービスを更新する必要があります。
新しいキーチェーンパスワードでサービスを更新するには:
1. 署名サービスのプロパティファイル/opt/FunctionalTestingLabForMobileAndWeb/packager/conf/<service name>/conf/packager.propertiesに移動し、サービスが使用する証明書、プロビジョニングプロファイル、およびポートをメモします。
2. パッケージャーのインストールフォルダー/opt/FunctionalTestingLabForMobileAndWeb/packager/で、remove_service.commandを実行して署名サービスを削除します。
3. スクリプトフォルダー/opt/FunctionalTestingLabForMobileAndWeb/packager/scripts/でadd_new_service.shを実行して、署名サービスを再度追加します。
プロビジョニングプロファイルを変更するには:
新しいプロビジョニングプロファイルが前のプロファイルと同じフォルダーにあり、同じ名前である場合、変更は必要ありません。
そうでない場合は、署名サービスのプロパティファイル/opt/FunctionalTestingLabForMobileAndWeb/packager/conf/<service name>/conf/packager.propertiesに移動し、IOS_PROVISION_PATHパラメーターを更新します。
証明書とプロビジョニングプロファイルを変更するには:
1. Macキーチェーンから古い証明書を削除し、新しい証明書をインストールします。
2. 署名サービスプロパティファイル/opt/FunctionalTestingLabForMobileAndWeb/packager/conf/<service name>/conf/packager.propertiesに移動し、IOS_CERTIFICATEとIOS_PROVISION_PATHパラメーターを更新します。
注: 新しいプロビジョニングプロファイルが前のプロファイルと同じフォルダーにあり、同じ名前である場合、IOS_PROVISION_PATHパラメーターを変更する必要はありません。
エージェントに自動的に署名する
エージェントアプリに再署名するプロセスを簡素化するために、パッケージングサービスのセットアップ後、OpenText Functional Testing Labコンソールからエージェントに署名して配布できます。
複数のAppleアカウントでエージェントアプリに自動的に署名する必要がある場合は、iOSエージェント署名用のAPIを使用してください。詳細については、iOSエージェントに署名するためのAPIを参照してください。エージェントアプリを手動でパッケージ化して署名し、OpenText Functional Testing Labにアップロードすることもできます。詳細については、パッケージサービスを使用してiOSアプリを手動でパッケージ化するを参照してください。
エージェントに署名するには:
次の方法でエージェントに署名できます。
署名エージェント | ステップ |
---|---|
アプリカードからエージェントアプリに自動的に署名する |
|
プライマリパッケージングサービスで定義されているものとは異なるプロビジョニングプロファイルを使用してエージェントアプリに署名する |
新しいデバイスがプロビジョニングプロファイルに追加された場合は、パッケージングサービスで定義されたプロファイルとは異なるプロビジョニングプロファイルを使用する必要があります。 [アプリ] > [エージェントアプリ] タブで、プロビジョニングプロファイルのアップロードボタンをクリックし、アップロードするファイルを選択します。エージェントアプリは、選択したプロビジョニングプロファイルで自動的に署名されます。 |
エージェントを配布するには
-
[デバイスラボ] > [コネクター] に移動します。
-
グリッドで必要なコネクターを選択し、エージェントの配布をクリックします。
-
配布が完了したら、グリッドで必要なコネクターを選択し、デバイスの再接続をクリックします。
注: アプリカードでエージェントアプリの以前のアップロードが選択されている場合でも、コネクターへの配布には常に最新のアップロードが使用されます。詳細については、コネクターの表示と管理および複数の署名サービスを参照してください。
その他の参照項目: