远程 signing service for iOS apps
要使用户能够在将应用程序上载到 Digital Lab 时对其重新进行签名,管理员需要设置 iOS 签名服务。您可以选择使用嵌入服务或远程服务。本主题介绍如何设置远程签名服务。有关 iOS 签名服务的更多详细信息,请参阅 iOS 签名服务。本主题仅适用于 UFT Digital Lab
开始之前
远程签名服务需要以下内容:
- Apple 开发人员证书和开发预置描述文件,其中包括通配符应用程序 ID。
有关如何生成 Apple 资产的更多详细信息,请参阅 iOS 用于签署应用程序的资源, 或参阅 Apple Developer 文档。有关何时需要对 iOS 应用程序进行签名的详细信息,请参阅 iOS 应用程序签名。 - 与 Digital Lab 服务器连接的专用 Mac 计算机。确保您的 Mac 电脑满足所需的系统要求。有关详细信息,请参阅支持矩阵。
您还可以使用代码注入服务手动签署代理或签署应用程序并将其打包。有关详细信息,请参阅包 aniOS 应用程序手动使用代码注入程序服务。
安装远程签名服务
设置自动签名时,需要首先安装该服务。
要安装服务,请执行以下操作:
- 下载 iOS 代码注入程序到 Mac 计算机。您可以通过在 ADM Marketplace 上选择您的 Digital Lab 版本来下载代码注入程序服务
- 双击 iOSPackager.pkg 文件以启动安装程序 (需要管理员权限) 。
- 按如下所示配置代码注入程序服务:
- 如果与代码注入服务的连接应仅通过 SSL,则选择启用 SSL。
- 提供 Mac 计算机的 IP 地址或完全限定的域名 (FQDN) 。
- 为服务指定一个有意义的名称。
- 选择用于签署应用程序的 iOS 开发人员证书。证书必须安装在您正在使用的 Mac 计算机上,并且可以在 Keychain Access 程序中看到。
- 选择设置配置文件。
注: 开发预配配置文件必须与上面选择的证书属于相同的 AppleDeveloper。
- 指定代码注入程序服务的端口。
- 成功安装软件后,将自动启动代码注入程序服务,并在您的浏览器中打开 UI。
- 导航到
/opt/UFTDigitalLab/packager/conf/<service name>/jetty
- 找到 start.ini 文件。在文件底部,进行以下更改:
更改自 更改为 -- module = gzipjet.port = < 代码注入程序服务端口 > jetty.port = < 代码注入程序服务端口 > - 重新启动服务

将显示安装失败的错误。
- 防止 Mac 进入睡眠状态。有关详细信息,请参阅 Apple 文档。
- 在管理 > 设置中定义 iOS 签名服务设置。有关详细信息,请参阅 iOS 签名服务。
要查看版本信息、包装服务的详细信息或下载日志,请单击包装接口顶部的关于图标 。可以在以下位置访问代码注入程序 UI:
http/s://< 代码注入程序服务器 IP 地址 >: port/instrumentation/
提示: 使用代码注入服务手工签署代理,或手工签署应用程序并将其打包。有关详细信息,请参阅包 aniOS 应用程序手动使用代码注入程序服务。
SSL 连接
如果在安装代码注入服务时选择了启用 SSL 选项,则需要在 Digital Lab 和代码注入服务之间建立信任。
要启用与代码注入程序的安全连接,请执行下列操作:
- 导航到 /opt/UFTDigitalLab/packager/Security/keystore 并将 .p12 文件复制到 Digital Lab 服务器。
- 开启 Digital Lab 服务器计算机,运行以下命令导入证书:
WindowsCopy codeLinux:<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
Copy code<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
- 确保将 https 用作 iOS 代码注入程序设置中的代码注入程序协议。有关详细信息,请参阅管理设置。有关多个共享空间环境,请参阅全局设置。
添加一项附加服务
在使用许多设备和工作区时,可能需要为设备使用不同的签名服务。例如,在 iOS 环境中,每个设备类型最多只能使用一个证书注册 100 个设备。此外,您可能希望为一个组提供签名服务,而不必依赖另一个组的证书。
除了主代码注入服务外,管理员还可以定义多个代码注入服务,然后将它们分配到不同的工作区。有关详细信息,请参阅多个签名服务。
要向代码注入程序服务中添加其他服务,请执行下列操作:
- 导航到安装文件夹 /opt/UFTDigitalLab/packager/,然后运行添加新服务脚本。
- 提供新服务的名称和服务端口。系统将提示您输入 AppleDeveloper 证书的名称以及预配配置文件的路径。
该服务将作为新选项卡添加到代码注入程序 UI 中。
要移除服务,导航至安装文件夹 /opt/UFTDigitalLab/packager/,然后运行 remove service 脚本。
重新启动或卸载代码注入程序服务
安装代码注入程序服务时,该服务将自动启动并继续运行。如果由于某种原因,服务未运行,并且 UI 在http/s://<packager server IP address>: port/instrumentation/
不可用 , 请通过运行安装文件夹 restart 中的脚本重新启动服务。/opt/UFTDigitalLab/packager/.
要卸载服务,导航至 /opt/UFTDigitalLab/packager/,然后运行 uninstall 脚本。
更新代码注入服务
如果您的钥匙串密码发生更改,或者如果要使用其他证书或设置配置文件,则需要更新代码注入服务。
要使用新的钥匙串密码更新服务,请执行下列操作:
1.导航到签名服务属性文件/opt/UFTDigitalLab/packager/conf/<service name> /conf/packager.properties,并记下服务使用的证书、配置配置文件和端口。
2.在代码注入程序安装文件夹 /opt/UFTDigitalLab/packager/中,通过运行 remove_service.command . 删除签名服务
3.通过运行脚本文件夹/opt/UFTMobile/packager/scripts /中的 add _ new _ service.sh,添加再次成为签名服务。
更改预配配置文件:
如果新的预配配置文件与以前的预配配置文件位于同一文件夹中并且具有相同的名称 , 则不需要进行任何更改。
如果不是,请导航到签名服务属性文件 /opt/UFTDigitalLab/packager/conf/<service name> /conf/packager.properties,并更新 IOS_PROVISION_PATH 参数。
要更改证书和预配配置文件 , 请执行以下操作:
1.移除旧证书从 Mac Keychain 并安装新的。
2.导航/opt/UFTDigitalLab/packager/conf/<service name> /conf/packager.properties IOS_CERTIFICATE IOS_PROVISION_PATH < 参数。
注: 如果新的预配配置文件与以前的预配配置文件位于同一文件夹中并且具有相同名称 , 则无需更改 IOS_PROVISION_PATH 参数。
自动签署代理
要简化代理应用程序重新签名过程,在设置了代码注入服务之后,可以从 Digital Lab 控制台签名和分发代理。
如果需要使用多个 Apple 帐户自动签署代理应用程序,请使用用于 iOS 代理签名的 API。有关详细信息,请参阅用于签署 iOS 代理的 API。也可以手动打包并签署代理应用程序,然后将其上载到 Digital Lab。有关详细信息,请参阅包 aniOS 应用程序手动使用代码注入程序服务。
要签署代理,请执行以下操作:
您可以通过以下方式签署代理:
签名代理人 | 步骤 |
---|---|
从应用程序卡自动签署 Agent 应用程序 |
|
使用与主代码注入服务中定义的配置文件不同的预配配置文件对代理应用程序进行签名 |
如果向预配配置文件中添加了新设备 , 则需要使用与代码注入服务中定义的配置文件不同的预配配置文件。 在 Apps > Agent apps 选项卡中,单击 Upload provisioning profile 按钮 |
分发代理
-
导航到设备实验室 > 连接器。
-
选择网格中所需的连接器,然后单击分发代理。
-
分发完成后,在网格中选择所需的连接器,然后单击重新连接设备。
另请参阅: