如何为iOS创建MDM注册配置文件

我正在尝试创建一个简单的MDM服务器来管理iOS设备。 但我正在努力与“MDM注册配置文件”,我正在使用ipcu创建此配置文件。 但是,当我通过电子邮件(或网络链接)打开此个人资料时,没有任何事情发生。

让我分享一下我在创建“MDM注册配置文件” – 在ipcu中创建新配置文件。 – “常规”部分的填写详细信息 – “移动设备管理”的填写详细信息 – 填写上述步骤所需的“凭据”的详细信息 – 然后我使用导出按钮导出。 为安全性选择none。

然后我通过电子邮件发送结果文件并在设备上打开,但是当我打开文件时没有发生任何事情,它没有要求我打开/安装文件。 (我也试过创建一个网站链接,但没有运气)。

我做错了什么? 是否有关于创建“MDM注册配置文件”的任何文档。 请帮忙。

更新1 –

我试图打开mobileconfig文件,看看是什么导致了问题。 经过大量的试验和错误,我发现如果我从文件中删除这个字典,它就开始工作了 –

 AccessRights 8191 CheckInURL https://server-domain/workplace3/logiphone/ CheckOutWhenRemoved  PayloadDescription Configures Mobile Device Management PayloadDisplayName Mobile Device Management PayloadIdentifier com.server-domain.profile.mdm-one. PayloadOrganization  PayloadType com.apple.mdm PayloadUUID CC7E12CB-DA53-4D4E-AB7D-39B45A453146 PayloadVersion 1 ServerURL https://server-domain/ SignMessage  Topic push_topic  

知道上面的字典有什么问题吗?

有效负载中缺少标记IdentityCertificateUUID
它是MDM有效负载中的强制属性。 它将用于标识与MDM关联的身份证书。 身份证书有效负载(PKCS12或SCEP)应具有与PayloadUUID相同的UUID,因此您修改的MDM有效负载将是

   AccessRights 8191 IdentityCertificateUUID YOUR-ID_CERTIFICATE-PAYLOADUUID CheckInURL https://server-domain/workplace3/logiphone/ CheckOutWhenRemoved  PayloadDescription Configures Mobile Device Management PayloadDisplayName Mobile Device Management PayloadIdentifier com.server-domain.profile.mdm-one. PayloadOrganization  PayloadType com.apple.mdm PayloadUUID CC7E12CB-DA53-4D4E-AB7D-39B45A453146 PayloadVersion 1 ServerURL https://server-domain/ SignMessage  Topic push_topic  

YOUR-ID_CERTIFICATE-PAYLOADUUID替换为您的ID证书(SCEP或PKCS12)的PayloadUUID

有关更多信息,请查看Intrepidus Group 在IOS MDM上的精彩PDF 。

如果再次出现错误,可以检查设备控制台日志并使用安装时收到的错误消息更新问题。 调试问题会非常有帮助。

更新
要获取IdentityCertificateUUID ,您必须使用PayloadType com.apple.security.pkcs12 (PKCS12 Certificate Payload)或PayloadType com.apple.security.scep (SCEP Payload)查找Payload字典。

根据您的问题,您已在IPCU中为MDM配置了凭据。 这意味着,您已将PKCS12 Payload配置为身份证书。因此,请确定类型为com.apple.security.pkcs12有效负载,复制其PayloadUUID,并在MDM有效负载中构造IdentityCertificateUUID 。 任务完成!

如果您已在IPCU中配置了SCEP,则应使用SCEP有效负载的PayloadUUID。 请注意,建议使用SCEP for Identity证书而不是使用PKCS12 Certificate.Using SCEP可以确保只有设备具有私钥。