什么是 Device Helper?
Device Helper 是 Jamf Mobile Assist 原生 iOS 和 iPadOS 应用的一部分,它让"一线管理者"能够在目标移动设备上执行有限的管理和安全任务。这类一线管理者群体通常介于 IT 团队与设备终端用户之间,有时还负责移动技术带来的业务成果。
零售门店经理、现场服务技术人员、护理单元协调员——这些只是负责移动设备群成果的人员的几个例子,他们往往在用户需要帮助的时刻就在其身边。与其让这些关键团队成员疲于奔命——为其部门收集和追踪一批设备——并在设备丢失、被盗、找回或配置错误时提交 IT 工单——如果一开始就有另一种方式来预防问题呢?如果这些一线管理者能够在问题发生的时间和地点即刻解决问题呢?
Device Helper 以应用的形式,为没有 Jamf Pro 访问权限的非 IT 用户提供基本的设备管理能力。Device Helper 中提供的操作可以在环境内经过授权的受管理设备上执行,由用户实时定位这些设备。
优势
Jamf Mobile Assist 提供以下能力:
一线管理者的任务……更简单 自动清除设备密码、设置独特的壁纸,或即时重启或抹掉设备。随时随地确保你的移动设备群的健康状况。
安全操作……只需简单一扫 为一线管理者提供熟悉而简便的工作流。只需扫描目标设备的壁纸——其中包含 Device Helper 专用的特殊二维码——即可采取行动。
设备群维护……无需 IT 帮助 基本的设备维护不再需要典型的 IT 流程。确保设备不会在 IT 工单解决期间停止服务,而是被交回并可立即投入使用。
每种角色可定制的能力 部署功能有限的 Device Helper 独特版本,以适合每位团队成员的需求。
使用场景与工作流
Device Helper 可以针对多种不同场景进行部署。根据你的具体使用场景,你可以为特定的用户群组配置一个或多个操作。
使用场景:按用户角色定制
| 角色 | 示例使用场景 | 示例应用功能 |
|---|---|---|
| 一线工作者 | 在某些情况下,一线工作者可能需要几项可在目标设备上执行的基本任务。例如护士在自己的设备上使用 Device Helper 对患者 iPad 采取操作。 | - Clear Passcode - Restart Device |
| 一线管理者 | 如果一线工作者自己的设备出现问题怎么办?可以为一线管理者配置不同的 Device Helper 配置,以提供额外的能力。 | - Remote Reset Workflow(即用于 Single Login 的远程注销) - Set Wallpaper - Restart Device |
| 现场服务 | 这些是你的"一线人员",负责驻守远程设施并负责设备的日常维护。可以为 Device Helper 配置相应能力,以确保设备完成置备、部署并保持在服务状态。 | - Return to Service - Erase Device - Set Wallpaper - Assign Location - Transfer/Hold Device |
| IT | 虽然 IT 团队自身可以访问 Jamf Pro 进行日常管理,但 Device Helper 也可以用于随时随地的移动管理。这些用户可以使用 Device Helper 的任何或全部功能(前提是他们已获得在 Jamf Pro 控制台中执行这些操作的权限)。 | - Return to Service - Erase Device - Set Wallpaper - Assign Location - Transfer/Hold Device |
目标设备上各项操作的功能
| 功能 | 类型 | 描述 |
|---|---|---|
| Return to Service | MDM Command | 向目标设备发送带 Return to Service 的远程抹掉命令,以跳过 Setup Assistant。v 1.7.7 起兼容(需要 iOS 17 和 iPadOS 17)。 |
| Restart Device | MDM Command | 重启目标设备。 |
| Clear Passcode | MDM Command | 清除目标设备的密码。 |
| Set Wallpaper | MDM Command | 在目标设备上设置壁纸。 |
| Remote Reset | Frontline Worker Remediation Workflow | 在目标设备上远程注销 Single Login 一线工作者:1) 将 Jamf Setup EA 设为 "pending",2) 清除设备密码,3) 设置壁纸。 |
| Device Transfer | Healthcare Workflow | 在房间/位置转移期间,将患者床旁设备远程置于临时保留状态:1) 将 Jamf Setup EA 值设为 "transfer",2) 设置壁纸。 |
| Assign Location | Healthcare Workflow | 通过扫描新值的二维码来更新/分配目标设备的房间:1) 将位置设为所扫描房间二维码的值,2) 设置壁纸。 |
用户体验
根据应用的配置,用户体验会自动变化。
端到端工作流:
- Device Helper — 从列表中选择远程操作
- Action — 扫描目标设备的二维码;触发 MDM 操作 / 工作流
- Result — 目标设备已可供使用
定制壁纸部署模型
要使 Device Helper 正常工作,必须为移动设备群准备好定制的壁纸。这些壁纸包含一个二维码,Device Helper 可以扫描它来发起远程操作。
有两种方法来准备设备:
设备端配置: 从 Jamf Pro 向设备主屏幕部署一个 "Set Wallpaper" webclip。该 webclip 会打开 Jamf Mobile Assist 应用,并通过简单的"1 次点按"步骤在设备上自动生成并部署一张独特的壁纸。
自动配置: 配置一个 webhook 自动化服务(例如 JAWA),它可以在注册或其他 Jamf Pro 事件触发时向设备部署壁纸。这允许定制壁纸中的数据独立于 Jamf Mobile Assist 应用而变化,同时仍提供应用采取远程操作所需的二维码。
Assign Location 工作流的环境准备
对于 "assign location" 工作流,系统会提示用户扫描目标设备的二维码,然后再扫描该设备应被分配到的位置。
要准备此工作流,你的组织必须创建与环境中物理空间相关联的"房间/位置二维码"。这些二维码值的命名规范必须与 Jamf Pro 中现有的清单信息完全一致。
示例: 如果 Jamf Pro 设备清单中存储的房间号显示为 "ACME-ICU-5-WEST"——那么匹配的位置二维码也应如此。
使用免费的在线二维码生成器或其他工具来创建这些位置码。
设置与配置
要从 Mobile Assist 应用访问 Device Helper,你必须先完成以下步骤。
通过 Jamf Pro 安装 Jamf Mobile Assist 应用
- 使用 Volume Purchasing 工作流将应用分发到 Jamf Pro
- 如果没有自动创建,请将 Jamf Mobile Assist 添加到 Jamf Pro 应用目录
- 在 Managed Distribution 标签中勾选 Assign Content Purchased in Volume
- 此时不要设定范围,并将 App Configuration 留空
- 记下浏览器地址栏中显示的 URL 里的应用记录 ID,以备将来参考:
https://yourinstance.jamfcloud.com/mobileDeviceApps.html?id=18&o=r在此示例中,ID 为18。
授权的目标设备
- 创建或使用现有的 Smart Group,以确定哪些目标设备被授权接收来自 Device Helper 的工作流。Smart Group 的条件可以随时更改,但不要删除该 Smart Group。
为壁纸和 Return to Service 创建 Jamf Pro 用户账户(可选)
在 Settings > System > User Accounts and Groups 中,添加一个 set wallpaper 和 return to service 操作所需的用户,并赋予以下自定义权限集:
- Jamf Pro Server Objects: Mobile Device Configuration Profiles (Read)
- Jamf Pro Server Objects: Mobile Devices (Create)
- Jamf Pro Server Objects: Mobile Devices (Read)
- Jamf Pro Server Actions: Send Mobile Device Remote Wipe Command
- Jamf Pro Server Actions: Send Mobile Device Set Wallpaper Command
- Jamf Pro Server Actions: View MDM command information in Jamf Pro API
使用内置工具(Jamf App Wizard)启用 Device Helper
接下来,在 Jamf Pro 中配置一些内容以启用 Device Helper。Mobile Assist 应用包含一个名为 Jamf App Wizard 的工具。此工具会自动设置所需的 API Role 和 Client,并创建 Device Helper 的 Linked App Integration。
将 Jamf Mobile Assist 应用设定范围到你有访问权限的设备。不要添加任何 App Configuration。
在此设备上启动 Mobile Assist。当没有 App Config 时,Jamf App Wizard 会自动打开。你也可以在部署后的任意时刻使用以下 App Config 键来打开 Wizard:
<key>wizard-mode</key> <string>yes</string>使用具有 Administrator 权限的账户登录你的 Jamf Pro 实例。
加载完成后,你实例中的所有移动设备应用都会显示出来。找到 Jamf Mobile Assist 的条目。注意:如果你有多个条目,请使用上面第 5 步中的 ID 作为参考。
点按该应用以查看详情。在应用描述中,选择 Begin App Integration。
完成 Assigner Integration 工作流中的每个步骤:
- 确认已选中 Mobile Assist tab
- 为 API Role 输入名称,然后点击 Create API Role。注意:如果输入的名称已存在,将返回错误。
- 为 API Client 输入名称,然后点击 Create API Client
- 从下拉菜单中 Select Target Group。此群组应与在 Authorized Target Devices 步骤中创建的 smart group 相匹配。
- Confirm App Link Request: 查看为此集成创建的名称和对象 ID
- 如果一切看起来无误,点击 Complete App Link
- 如果成功,你可以进入 Navigation tab 并点按 Return 按钮返回上一部分
- 现在,你可以在 Current Integrations tab 中查看该集成
定制 Managed App Config 并部署
- 以 Key/Value Pair 表为参考,编辑 Appendix A 中的 Managed App Config 模板。
- 复制该 app config 并导航到 Mobile Assist 应用(Devices > Mobile Device Apps > Jamf Mobile Assist > App Configuration)
- 将该应用设定范围到被授权对目标设备执行 Device Helper 的管理者/控制设备。
- Save
- 完成上述步骤后,你现在应该能够在授权的管理者/控制设备上打开 Jamf Mobile Assist,Device Helper 将自动启动。显示的工作流菜单基于 app config 设置。
创建 Web Clip(可选)
按照上述步骤创建另一个 Jamf Mobile Assist 应用记录。定制 Managed App Config 使其不启用任何远程工作流,并将范围设定到 Authorized Target Group。
- 创建新的或使用现有的配置描述文件
- 根据你的工作流需求,添加 2 个 web clip 载荷,每个使用以下之一:
jamf-mobile-assist://action?workflow=selfwallpaper jamf-mobile-assist://action?workflow=returntoservice - 勾选 use fullscreen
- 根据你的工作流需求,将范围设定到目标设备,例如上面为 Authorized Target Devices 创建的 smart group
- 保存
常见问题 / 故障排除
常见问题
如果我不想用 web clip 手动生成壁纸,有办法自动化吗?
自动化服务器可以实时部署壁纸。这些壁纸可以基于 Jamf Pro 事件更新,独立于 Jamf Mobile Assist。这为终端用户体验带来额外的灵活性,但需要通过付费服务合作进行额外的配置、时间、支持等。请联系你的 Jamf 销售代表了解更多信息。
我需要在"目标"和"管理者/控制"设备上都安装 Jamf Mobile Assist 应用和/或 web clip 吗?
取决于你的使用场景。"管理者/控制"设备上需要该应用。如果要从应用设置壁纸和/或发起 Return to Service,则需要在设备上安装该应用以及相应的 web clip。
如果我想在一个 Jamf Pro 实例中同时部署 "assigner" 和 "device helper" 模式怎么办?
为每种模式创建单独的应用记录,并配置相应的特定于模式的 app config。
我能为不同团队设置多个配置吗?(例如 IT、Field Services、Manager)
可以,你可以在 Jamf Pro 中创建多个应用记录,配以不同的 app config,并适当地设定其范围。
如何限制访问?(例如管理者扫描 IT 设备上的二维码)
根据角色使用不同的应用记录来授权应用访问,并由授权目标群组控制对目标设备的访问。
使用 Return to Service 的网络要求是什么?
- 需要禁用 Activation Lock
- 不支持 Enrollment Customization;不支持 Require Credentials for Enrollment
- 注册不支持 802.1x 和基于证书的网络
- 不建议使用带 captive portal 的网络(访客网络)
故障排除
Pro 控制台中出现 app config 管理命令错误、应用安装失败或应用白屏
补救步骤:
- 复制 app config
- 清除 app config 并保存
- 粘贴 app config 并保存
可能的根本原因:在运行 Jamf App Wizard 之前,应用记录已被设定范围和/或已输入 app config。
在目标设备上尝试工作流后,Jamf Mobile Assist 中出现 "Not Authorized" 对话框提示
补救步骤:
- 确认目标设备当前是授权目标群组的成员,然后重试
可能的根本原因:设备原本不是成员,或在工作流期间因 smart group 重新计算而导致成员关系发生变化。
Appendix A - Managed App Config 参考
模板
<dict>
<!-- Required keys (do not edit) -->
<key>JPS_URL</key>
<string>$JPS_URL</string>
<key>JSSID</key>
<string>$JSSID</string>
<key>MANAGEMENTID</key>
<string>$MANAGEMENTID</string>
<key>OAUTH_AUTH_CODE</key>
<string>$OAUTH_AUTH_CODE</string>
<key>APP_CONFIG_REINSTALL_CODE</key>
<string>$APP_CONFIG_REINSTALL_CODE</string>
<!-- Authorized remote workflows (5 or less recommended) -->
<key>1-remote-reset-enabled</key>
<string>no</string>
<key>2-device-transfer-enabled</key>
<string>no</string>
<key>3-update-location-enabled</key>
<string>no</string>
<key>4-restart-device-enabled</key>
<string>no</string>
<key>5-erase-device-enabled</key>
<string>no</string>
<key>6-clear-passcode-enabled</key>
<string>no</string>
<key>7-set-wallpaper-enabled</key>
<string>no</string>
<key>8-return-to-service</key>
<string>no</string>
<!-- Required for set wallpaper and return to service -->
<key>api-username</key>
<string>ENTER_USERNAME_HERE</string>
<key>api-password</key>
<string>ENTER_PASSWORD_HERE</string>
<!-- Optional -->
<key>wallpaper-workflows-enabled</key>
<string>yes</string>
<key>device-role-ea</key>
<string>ENTER_YOUR_NAME_OF_EA_HERE</string>
<key>rts-wifi-config-profile-id</key>
<string>0</string>
</dict>
示例 1:学校校长
某学区购买了 iPad,并为每位小学生分配了一台。这些学校规模较小,没有现场 IT 人员。学区中央办公室有一位 IT 协调员,但他们可能无法随时到位。学区管理层在与其法律顾问协商后,制定了一项政策,规定在涉及学生安全的紧急情况下,学校校长可以清除密码并访问学生 iPad 上的内容。Mobile Assist 应用以下面的 app config 部署到校长的 iPad 上。唯一的能力是 Reset Passcode。
<dict>
<key>JPS_URL</key>
<string>$JPS_URL</string>
<key>JSSID</key>
<string>$JSSID</string>
<key>MANAGEMENTID</key>
<string>$MANAGEMENTID</string>
<key>OAUTH_AUTH_CODE</key>
<string>$OAUTH_AUTH_CODE</string>
<key>APP_CONFIG_REINSTALL_CODE</key>
<string>$APP_CONFIG_REINSTALL_CODE</string>
<key>6-clear-passcode-enabled</key>
<string>yes</string>
</dict>
Key/Value Pairs
注意: 所有值的类型均为
string
| Key | Value | 描述 |
|---|---|---|
JPS_URL |
$JPS_URL |
Jamf Pro Server 实例 URL |
JSSID |
$JSSID |
运行 Jamf Mobile Assist 的设备的 JSSID |
MANAGEMENTID |
$MANAGEMENTID |
运行 Jamf Mobile Assist 的设备的 MANAGEMENTID |
OAUTH_AUTH_CODE |
$OAUTH_AUTH_CODE |
必填 |
APP_CONFIG_REINSTALL_CODE |
$APP_CONFIG_REINSTALL_CODE |
与 OAUTH_AUTH_CODE 一起为必填 |
1-remote-reset-enabled |
YES 或 NO(默认为 NO) | 启用 Remote Reset 工作流选项 |
2-device-transfer-enabled |
YES 或 NO(默认为 NO) | 启用 Device Transfer 工作流选项 |
3-update-location-enabled |
YES 或 NO(默认为 NO) | 启用 Update Location 工作流选项 |
4-restart-device-enabled |
YES 或 NO(默认为 NO) | 启用 Restart Device 工作流选项 |
5-erase-device-enabled |
YES 或 NO(默认为 NO) | 启用 Erase Device 工作流选项 |
6-clear-passcode-enabled |
YES 或 NO(默认为 NO) | 启用 Clear Passcode 工作流选项 |
7-set-wallpaper-enabled |
YES 或 NO(默认为 NO) | 启用 Set Wallpaper 工作流选项 |
8-return-to-service |
YES 或 NO(默认为 NO) | 启用 Return to Service 工作流选项 |
api-username |
<API service account username> |
应用中的壁纸任务和 return to service 所需 |
api-password |
<API service account password> |
应用中的壁纸任务和 return to service 所需 |
wallpaper-workflows-enabled |
YES 或 NO(默认为 YES) | 如果使用 Brander 壁纸服务则设为 NO |
wallpaper-lock-screen-only |
YES 或 NO(默认为 NO) | 默认行为会将壁纸安装到锁屏和主屏幕。设为 YES 则仅安装到锁屏。 |
wallpaper-include-image |
YES 或 NO(默认为 YES) | 默认行为会在壁纸上添加图像。如果不需要壁纸背景图像则设为 NO。 |
wallpaper-image-url |
壁纸背景图像的 URL(默认为 https://jamf.it/background) |
当 wallpaper-include-image 为 YES 时必填。设为自定义壁纸背景的 URL。建议的图像尺寸和类型为 1024x1024 PNG。 |
device-role-ea |
<extension attribute name>(默认为 "Device Role") |
用于定义设备角色/状态的扩展属性 |
rts-wifi-config-profile-id |
<config profile id> |
包含一个或多个用于 return to service 的 Wi-Fi 载荷的配置描述文件 |
clear-location |
YES 或 NO(默认为 NO) | 设为 YES,可在发起 Update Location 工作流之前清除位置。 |