Deploying custom DDM declarations using Blueprints in Jamf Pro
Der Flounder Seldom updated, occasionally insightful.
2025年11月26日
Jamf Pro通过蓝图(Blueprints)提供的管理选项之一,是创建自定义声明式(declarative)声明并将其部署到受管Mac的能力。这意味着,如果您可以手动为DDM声明构建JSON载荷(payload),即使Jamf尚未为该声明提供蓝图模板,您现在也应该能够使用蓝图来部署它。这在概念上类似于Jamf Pro通过“应用程序与自定义设置”管理描述文件载荷向macOS部署自定义配置的能力。
更多细节,请阅读下文。
在本示例中,我使用以下自定义声明来设置磁盘管理设置。蓝图也提供了一个用于磁盘管理的声明模板,但使用自定义声明来部署磁盘管理设置的好处在于,该示例中的声明全部在一个JSON载荷中,无需引用其他组件(需要引用其他组件的声明示例是部署sudo配置的服务配置声明,该声明需要从外部源下载文件)。
|
|
在本例中,该声明设置以下磁盘管理设置:
- 禁止外部存储设备:系统无法挂载任何外部存储。
- 禁止网络存储:系统无法挂载来自网络服务器的任何存储。
截至Jamf Pro 11.22.1版本,尚未提供用于创建部署自定义声明的蓝图的蓝图模板,因此需要手动配置蓝图。为此,请按以下步骤操作:
-
登录 Jamf Pro。
-
选择 Blueprints。
-
点击 Create blueprint 按钮。
-
您将看到一个未配置的蓝图。点击显示 Untitled blueprint 的地方并提供名称。
本示例中,我使用 “Disk Management Settings”。
-
在浏览器窗口左侧的列表中向下滚动,找到 Custom Declarations(自定义声明)组件。
-
点击 Custom Declarations 组件,并将其拖放到 Declaration group(声明组)部分。
-
添加到 Declaration group 部分后,点击 Custom Declarations 组件上的任意位置以打开其进行编辑。 当 Custom Declarations 组件打开进行编辑时,会显示关于自定义配置的说明以及警告,指出使用自定义配置可能带来风险,应在生产环境中部署前仔细测试使用该组件构建的所有配置。
-
阅读完警告并理解潜在风险后,点击 Get Started 按钮。
-
点击 Add item 按钮。自定义声明设置将打开并显示一组占位符设置。
在继续之前,如果您尚未阅读,我强烈建议您阅读“创建自定义声明蓝图”文档,以了解使用自定义声明蓝图组件创建自定义声明所涉及的所有部分。
在 Custom Declarations 组件的 Kind 字段中,有两个选项:
- Configuration(配置):定义设备应如何配置的设置和策略,其功能类似于描述文件载荷。
- Asset(资产):配置所使用的数据,例如证书、配置文件、脚本或DDM声明支持使用的其他数据。
在我们的示例中,我们选择 Configuration。
在 Custom Declarations 组件的 Channel 字段中,有两个选项:
- System(系统):将管理设置应用于设备。
- User(用户):将管理设置应用于MDM管理的用户。
在我们的示例中,我们选择 System。
在 Type 字段中,输入声明类型。
在我们的示例中,我们使用磁盘管理的声明类型:com.apple.configuration.diskmanagement.settings
在 Payload 字段中,以JSON格式输入声明的配置。在我们的示例中,我们使用以下配置:
|
|
-
配置并验证完 Kind、Channel、Type 和 Payload 设置后,点击 Update 按钮。
-
确认所有设置看起来符合预期,然后点击 Save 按钮。
-
此时,您应该拥有一个已配置所有设置但尚未设置目标范围的蓝图。要设定此蓝图的作用域,请转到 Scope 部分并点击箭头按钮。
-
选择一个 Jamf Pro 智能组或静态组。在本示例中,我选择了一个名为 “Disk Management Deployment Group” 的静态组。
-
完成所有配置后,点击 Deploy 按钮,将更改部署到您要管理的Mac上。
-
部署完成后,Jamf Pro 中的 Blueprints 屏幕应显示新创建的 “Disk Management Settings” 蓝图已部署。
在您的受管设备上,您可以通过点击注册描述文件(enrollment profile),然后滚动到底部来验证新的自定义声明是否已部署。在本例中,由于您正在部署磁盘管理配置,您应该会看到一个 Device Declarations(设备声明)部分,其中列出了 Disk Management(磁盘管理)。
如果您点击 Disk Management 列表,它应该报告以下信息:
- External Storage Restriction: Not Allowed
- Network Storage Restriction: Not Allowed