移动设备注册
移动设备注册是企业管理的第一阶段。 设备配置为在注册过程中使用安全预防措施与 MDM 服务器通信。 注册服务验证企业是否仅管理经过身份验证和授权的设备。
注册过程包括以下步骤:
- 注册终结点的发现:此步骤提供注册终结点配置设置。
- 证书安装:此步骤处理用户身份验证、证书生成和证书安装。 已安装的证书将来将用于管理客户端/服务器 (TLS/SSL) 相互身份验证。
- DM 客户端预配:此步骤将设备管理 (DM) 客户端配置为在通过 DM SyncML 通过 HTTPS 注册后连接到移动设备管理 (MDM) 服务器, (也称为 Open Mobile Alliance Device Management (OMA DM) XML) 。
注册协议
对注册协议进行了许多更改,以更好地支持跨所有平台的各种方案。 有关移动设备注册协议的详细信息,请参阅:
注册过程包括以下步骤:
发现请求
发现请求是一个简单的 HTTP 后调用,它通过 HTTP 返回 XML。 返回的 XML 包括身份验证 URL、管理服务 URL 和用户凭据类型。
证书注册策略
证书注册策略配置是 MS-XCEP 协议的实现,如 [MS-XCEP]: X.509 证书注册策略协议规范中所述。 规范的第 4 部分提供了策略请求和响应的示例。 X.509 证书注册策略协议是一种最小消息传送协议,其中包含单个客户端请求消息 (GetPolicies) ,其中包含匹配的服务器响应消息 (GetPoliciesResponse) 。
有关详细信息,请参阅 [MS-XCEP]:X.509 证书注册策略协议
证书注册
证书注册是 MS-WSTEP 协议的实现。
管理配置
服务器发送包含 TLS/SSL 服务器身份验证 (服务器证书) 的预配 XML、企业 CA 颁发的客户端证书、用于客户端与管理服务器) 通信的 DMClient 启动信息 (、供用户安装企业应用程序) 的企业应用程序令牌 (,以及用于下载公司中心应用程序的链接。
以下文章介绍了使用各种身份验证方法的端到端注册过程:
注意
最佳做法是,不要对以下值使用硬编码服务器端检查:
- 用户代理字符串
- 注册期间传递的任何固定 URI
- 除非另有说明,否则任何值的特定格式设置,例如设备 ID 的格式。
对已加入域的设备的注册支持
加入本地 Active Directory 的设备可以通过 设置>访问工作单位或学校注册到 MDM。 但是,注册只能面向使用用户特定策略注册的用户。 面向设备的策略继续面向设备的所有用户。
不支持注册方案
以下方案不允许 MDM 注册:
- Windows 桌面上的内置管理员帐户无法注册到 MDM。
- 标准用户无法注册 MDM。 只有管理员用户可以注册。
禁用 MDM 注册
IT 管理员可以使用禁用 MDM 注册组策略为已加入域的电脑 禁用 MDM 注册 。
组策略路径: 计算机配置>管理模板>Windows 组件>MDM>禁用 MDM 注册。
相应的注册表项: HKLM\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\MDM\DisableRegistration (REG_DWORD)
注册错误消息
注册服务器可以使用 SOAP 错误格式拒绝注册消息。 可以按如下所示发送创建的错误:
<s:envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing">
<s:header>
<a:action s:mustunderstand="1">http://schemas.microsoft.com/windows/pki/2009/01/enrollment/rstrc/wstep</a:action>
<activityid correlationid="2493ee37-beeb-4cb9-833c-cadde9067645" xmlns="http://schemas.microsoft.com/2004/09/servicemodel/diagnostics">2493ee37-beeb-4cb9-833c-cadde9067645</activityid>
<a:relatesto>urn:uuid:urn:uuid:0d5a1441-5891-453b-becf-a2e5f6ea3749</a:relatesto>
</s:header>
<s:body>
<s:fault>
<s:code>
<s:value>s:receiver</s:value>
<s:subcode>
<s:value>s:authorization</s:value>
</s:subcode>
</s:code>
<s:reason>
<s:text xml:lang="en-us">This User is not authorized to enroll</s:text>
</s:reason>
</s:fault>
</s:body>
</s:envelope>
示例错误消息:
命名空间 | 子代码 | 错误 | 描述 | HRESULT |
---|---|---|---|---|
s: | MessageFormat | MENROLL_E_DEVICE_MESSAGE_FORMAT_ERROR | 来自移动设备管理 (MDM) 服务器的消息无效。 | 80180001 |
s: | Authentication | MENROLL_E_DEVICE_AUTHENTICATION_ERROR | 移动设备管理 (MDM) 服务器无法对用户进行身份验证。 请重试或联系系统管理员。 | 80180002 |
s: | 授权 | MENROLL_E_DEVICE_AUTHORIZATION_ERROR | 用户无权注册移动设备管理 (MDM) 。 请重试或联系系统管理员。 | 80180003 |
s: | CertificateRequest | MENROLL_E_DEVICE_CERTIFICATEREQUEST_ERROR | 用户对证书模板没有权限,或者无法访问证书颁发机构。 请重试或联系系统管理员。 | 80180004 |
s: | EnrollmentServer | MENROLL_E_DEVICE_CONFIGMGRSERVER_ERROR | 移动设备管理 (MDM) 服务器遇到错误。 请重试或联系系统管理员。 | 80180005 |
一个: | InternalServiceFault | MENROLL_E_DEVICE_INTERNALSERVICE_ERROR | 移动设备管理 (MDM) 服务器上存在未经处理的异常。 请重试或联系系统管理员。 | 80180006 |
一个: | InvalidSecurity | MENROLL_E_DEVICE_INVALIDSECURITY_ERROR | 移动设备管理 (MDM) 服务器无法验证你的帐户。 请重试或联系系统管理员。 | 80180007 |
SOAP 格式还包括 deviceenrollmentserviceerror
元素。 下面是一个示例:
<s:envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing">
<s:header>
<a:action s:mustunderstand="1">http://schemas.microsoft.com/windows/pki/2009/01/enrollment/rstrc/wstep</a:action>
<activityid correlationid="2493ee37-beeb-4cb9-833c-cadde9067645" xmlns="http://schemas.microsoft.com/2004/09/servicemodel/diagnostics">2493ee37-beeb-4cb9-833c-cadde9067645</activityid>
<a:relatesto>urn:uuid:urn:uuid:0d5a1441-5891-453b-becf-a2e5f6ea3749</a:relatesto>
</s:header>
<s:body>
<s:fault>
<s:code>
<s:value>s:receiver</s:value>
<s:subcode>
<s:value>s:authorization</s:value>
</s:subcode>
</s:code>
<s:reason>
<s:text xml:lang="en-us">device cap reached</s:text>
</s:reason>
<s:detail>
<deviceenrollmentserviceerror xmlns="http://schemas.microsoft.com/windows/pki/2009/01/enrollment">
<errortype>devicecapreached</errortype>
<message>device cap reached</message>
<traceid>2493ee37-beeb-4cb9-833c-cadde9067645</traceid>
</deviceenrollmentserviceerror>
</s:detail>
</s:fault>
</s:body>
</s:envelope>
示例错误消息:
子代码 | 错误 | 描述 | HRESULT |
---|---|---|---|
DeviceCapReached | MENROLL_E_DEVICECAPREACHED | 该帐户注册到移动设备管理 (MDM) 的设备太多。 删除或取消注册旧设备以修复此错误。 | 80180013 |
DeviceNotSupported | MENROLL_E_DEVICENOTSUPPORTED | 移动设备管理 (MDM) 服务器不支持此平台或版本,请考虑升级设备。 | 80180014 |
NotSupported | MENROLL_E_NOT_SUPPORTED | 此设备通常不支持移动设备管理 (MDM) 。 | 80180015 |
NotEligibleToRenew | MENROLL_E_NOTELIGIBLETORENEW | 设备尝试续订移动设备管理 (MDM) 证书,但服务器拒绝了请求。 检查设备上的续订计划。 | 80180016 |
InMaintenance | MENROLL_E_INMAINTENANCE | 移动设备管理 (MDM) 服务器状态帐户处于维护状态,请稍后重试。 | 80180017 |
UserLicense | MENROLL_E_USER_LICENSE | 移动设备管理 (MDM) 用户许可证时出错。 请与系统管理员联系。 | 80180018 |
InvalidEnrollmentData | MENROLL_E_ENROLLMENTDATAINVALID | 移动设备管理 (MDM) 服务器拒绝了注册数据。 服务器可能未正确配置。 | 80180019 |
TraceID 是记录的任意格式文本节点。 它应标识此注册尝试的服务器端状态。 支持人员可以使用此信息来查找服务器拒绝注册的原因。