设备注册是基于云的身份验证的先决条件。 通常,设备通过 Microsoft Entra ID 或 Microsoft Entra 混合联接来完成设备注册。 本文详细介绍了 Microsoft Entra 联接和 Microsoft Entra 混合联接在托管和联合环境中的工作原理。 有关 Microsoft Entra 身份验证在这些设备上如何工作的详细信息,请参阅主刷新令牌一文。
托管环境中的 Microsoft Entra 联接
阶段
说明
A
Microsoft Entra 联接设备注册的最常见方式是在开箱即用体验 (OOBE) 期间,在云体验主机 (CXH) 应用程序中加载 Microsoft Entra 联接 Web 应用。 应用程序将 GET 请求发送到 Microsoft Entra OpenID 配置终结点,以发现授权终结点。 Microsoft Entra ID 以 JSON 文档形式向应用程序返回 OpenID 配置(其中包含授权终结点)。
B
应用程序为授权终结点生成登录请求,并收集用户凭据。
C
用户提供其用户主体名称 (UPN) 后,应用程序会将 GET 请求发送到 Microsoft Entra ID 来发现用户的相应领域信息。 此信息用于确定环境是托管环境还是联合环境。 Microsoft Entra ID 返回 JSON 对象格式的信息。 应用程序确定环境是托管环境(非联合环境)。
此阶段的最后一步是让应用程序创建一个身份验证缓冲区,如果是在 OOBE 中,则暂时进行缓存,以在 OOBE 结束时自动登录。 应用程序将凭据 POST 到 Microsoft Entra ID,在那里进行验证。 Microsoft Entra ID 返回带有声明的 ID 令牌。
应用程序将设备注册请求发送到 Azure DRS,其中包括 ID 令牌、证书请求、tkpub 和证明数据。 Azure DRS 验证 ID 令牌,创建设备 ID,并基于包含的证书请求创建证书。 然后,Azure DRS 在 Microsoft Entra ID 中写入设备对象,并将设备 ID 和设备证书发送到客户端。
H
从 Azure DRS 接收到设备 ID 和设备证书后,设备注册完成。 设备 ID 将保存起来以供将来参考(可从 dsregcmd.exe /status 查看),设备证书安装在计算机的个人存储中。 完成设备注册后,此过程将继续进行 MDM 注册。
联合环境中的 Microsoft Entra 联接
阶段
说明
A
Microsoft Entra 联接设备注册的最常见方式是在开箱即用体验 (OOBE) 期间,在云体验主机 (CXH) 应用程序中加载 Microsoft Entra 联接 Web 应用。 应用程序将 GET 请求发送到 Microsoft Entra OpenID 配置终结点,以发现授权终结点。 Microsoft Entra ID 以 JSON 文档形式向应用程序返回 OpenID 配置(其中包含授权终结点)。
B
应用程序为授权终结点生成登录请求,并收集用户凭据。
C
用户提供其用户名(采用 UPN 格式)后,应用程序会将 GET 请求发送到 Microsoft Entra ID 来发现用户的相应领域信息。 此信息用于确定环境是托管环境还是联合环境。 Microsoft Entra ID 返回 JSON 对象格式的信息。 应用程序确定环境是联合环境。
应用程序将设备注册请求发送到 Azure DRS,其中包括 ID 令牌、证书请求、tkpub 和证明数据。 Azure DRS 验证 ID 令牌,创建设备 ID,并基于包含的证书请求创建证书。 然后,Azure DRS 在 Microsoft Entra ID 中写入设备对象,并将设备 ID 和设备证书发送到客户端。
I
从 Azure DRS 接收到设备 ID 和设备证书后,设备注册完成。 设备 ID 将保存起来以供将来参考(可从 dsregcmd.exe /status 查看),设备证书安装在计算机的个人存储中。 完成设备注册后,此过程将继续进行 MDM 注册。
混合环境中的 Microsoft Entra 联接
阶段
说明
A
用户使用域凭据登录到已加入域的 Windows 10 或更新版本计算机。 此凭据可以是用户名和密码或智能卡身份验证。 用户登录触发“自动设备联接”任务。 “自动设备联接”任务在加入域时被触发,并且每小时重试一次。 它并不完全取决于用户登录。
B
任务使用 LDAP 协议查询 Active Directory 中是否有存储在 Active Directory 配置分区 (CN=62a0ff2e-97b9-4513-943f-0d221bd30080,CN=Device Registration Configuration,CN=Services,CN=Configuration,DC=corp,DC=contoso,DC=com) 中的服务连接点上的关键字属性。 关键字属性中返回的值用于确定设备注册是定向到 Azure 设备注册服务 (DRS) 还是定向到本地托管的企业设备注册服务。
C
对于托管环境,任务以自签名证书的形式创建一个初始身份验证凭据。 任务使用 LDAP 将证书写入 Active Directory 中计算机对象上的 userCertificate 属性。
日
在 Microsoft Entra ID 中创建一个表示包含 userCertificate 属性上的证书的计算机的设备对象之前,计算机无法向 Azure DRS 进行身份验证。 Microsoft Entra Connect 检测到属性更改。 在下一个同步周期,Microsoft Entra Connect 将 userCertificate、对象 GUID 和计算机 SID 发送到 Azure DRS。 Azure DRS 使用属性信息在 Microsoft Entra ID 中创建一个设备对象。
E
“自动设备联接”任务在每次用户登录时或每小时触发一次,并尝试使用 userCertificate 属性中公钥的相应私钥向 Microsoft Entra ID 对计算机进行身份验证。 Microsoft Entra 对计算机进行身份验证,并向计算机颁发 ID 令牌。
任务将设备注册请求发送到 Azure DRS,其中包括 ID 令牌、证书请求、tkpub 和证明数据。 Azure DRS 验证 ID 令牌,创建设备 ID,并基于包含的证书请求创建证书。 然后,Azure DRS 在 Microsoft Entra ID 中更新设备对象,并将设备 ID 和设备证书发送到客户端。
H
从 Azure DRS 接收到设备 ID 和设备证书后,设备注册完成。 设备 ID 将保存起来以供将来参考(可从 dsregcmd.exe /status 查看),设备证书安装在计算机的个人存储中。 完成设备注册后,任务将退出。
联合环境中的 Microsoft Entra 混合联接
阶段
说明
A
用户使用域凭据登录到已加入域的 Windows 10 或更新版本计算机。 此凭据可以是用户名和密码或智能卡身份验证。 用户登录触发“自动设备联接”任务。 “自动设备联接”任务在加入域时被触发,并且每小时重试一次。 它并不完全取决于用户登录。
B
任务使用 LDAP 协议查询 Active Directory 中是否有存储在 Active Directory 配置分区 (CN=62a0ff2e-97b9-4513-943f-0d221bd30080,CN=Device Registration Configuration,CN=Services,CN=Configuration,DC=corp,DC=contoso,DC=com) 中的服务连接点上的关键字属性。 关键字属性中返回的值用于确定设备注册是定向到 Azure 设备注册服务 (DRS) 还是定向到本地托管的企业设备注册服务。
C
对于联合环境,计算机使用 Windows 集成身份验证对企业设备注册终结点进行身份验证。 企业设备注册服务创建并返回一个令牌,其中包括对象 GUID、计算机 SID 和已加入域的状态的声明。 任务将令牌和声明提交到 Microsoft Entra ID,在那里进行验证。 Microsoft Entra ID 向正在运行的任务返回一个 ID 令牌。
为了为本地联合应用程序提供 SSO,任务会从本地 STS 请求企业 PRT。 运行 Active Directory 联合身份验证服务角色的 Windows Server 2016 验证请求,并将其返回给正在运行的任务。
F
任务将设备注册请求发送到 Azure DRS,其中包括 ID 令牌、证书请求、tkpub 和证明数据。 Azure DRS 验证 ID 令牌,创建设备 ID,并基于包含的证书请求创建证书。 然后,Azure DRS 在 Microsoft Entra ID 中写入设备对象,并将设备 ID 和设备证书发送到客户端。 从 Azure DRS 接收到设备 ID 和设备证书后,设备注册完成。 设备 ID 将保存起来以供将来参考(可从 dsregcmd.exe /status 查看),设备证书安装在计算机的个人存储中。 完成设备注册后,任务将退出。
G
如果已启用 Microsoft Entra Connect 设备写回,Microsoft Entra Connect 会在下一个同步周期从 Microsoft Entra 请求更新(使用证书信任的混合部署需要设备写回)。 Microsoft Entra ID 将设备对象与匹配的同步计算机对象相关联。 Microsoft Entra Connect 接收包含对象 GUID 和计算机 SID 的设备对象,并将设备对象写入 Active Directory。