Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
概述
下图概述了本地应用程序预配的工作原理。
将用户预配到本地应用程序中有三个主要组件:
- 预配代理提供 Microsoft Entra ID 与本地环境之间的连接。
- Extensible Connectivity(ECMA) 连接器主机将预配请求从 Microsoft Entra ID 转换为向目标应用程序发出的请求。 它充当Microsoft Entra ID 与应用程序之间的网关。 可以使用它导入与 Microsoft Identity Manager 一起使用的现有 ECMA2 连接器。 如果已生成 SCIM 应用程序或 SCIM 网关,则不需要 ECMA 主机。
- Microsoft Entra 预配服务充当同步引擎。
注释
Microsoft标识管理器同步不是必需的。 但是,在将 ECMA2 连接器导入 ECMA 主机之前,可以使用它来构建和测试 ECMA2 连接器。 ECMA2 连接器专用于 MIM,而 ECMA 主机专门用于与预配代理一起使用。
防火墙要求
无需打开连接到公司内部网络的入站连接。 预配代理仅使用到预配服务的出站连接,这意味着无需为传入连接打开防火墙端口。 你也不需要外围(DMZ)网络,因为所有连接都是出站的,并通过安全通道进行。
此处详细介绍了预配代理所需的出站终结点。
ECMA 连接器主机体系结构
ECMA 连接器主机具有几个用于实现本地预配的区域。 下图是呈现这些各个区域的概念图。 下表更详细地描述了这些区域。
| 面积 | 说明 |
|---|---|
| 端点 | 负责与 Microsoft Entra 预配服务的通信和数据传输 |
| 内存中缓存 | 用于存储从本地数据源导入的数据 |
| Autosync | 提供 ECMA 连接器主机与本地数据源之间的异步数据同步 |
| 业务逻辑 | 用于协调所有 ECMA 连接器主机活动。 可在 ECMA 主机中配置自动同步时间。 这在属性页中。 |
关于锚点属性和识别名
提供了以下信息以更好地解释泛型SQL 连接器使用的定位点属性和可分辨名称。
定位点属性是对象类型的唯一属性,该属性不会更改,并表示 ECMA 连接器主机内存中缓存中的该对象。
可分辨名称(DN)是一个名称,它通过指示其在目录层次结构中的当前位置来唯一标识对象。 或者,在分区中使用 SQL。 该名称通过连接目录分区根目录的锚点属性来形成。
当我们想到采用传统格式的传统 DN(如 Active Directory 或 LDAP)时,我们会想到类似这样的东西:
CN=Lola Jacobson,CN=Users,DC=contoso,DC=com
但是,对于像 SQL 这样平面的、非分层的数据源来说,DN 需要已经存在于其中一个表中,或者从我们提供给 ECMA 连接器主机的信息中创建。
这可以通过在配置 genericSQL 连接器时选中复选框中的 自动生成 来实现。 选择自动生成 DN 时,ECMA 主机会生成 LDAP 格式的 DN:CN=<锚定值>,OBJECT=<类型>。 这还假定 DN 在“连接”页中 未选中 “定位点”。
genericSQL 连接器要求使用 LDAP 格式填充 DN。 泛型 SQL 连接器使用具有组件名称“OBJECT=”的 LDAP 样式。 这样,它就可以使用分区(每个对象类型都是分区)。
由于 ECMA 连接器主机当前仅支持 USER 对象类型,因此 OBJECT=type< 将为 OBJECT=>USER。 因此,具有 ljacobson 定位点值的用户的 DN 将为:
CN=ljacobson,OBJECT=USER
用户创建工作流
Microsoft Entra 预配服务会查询 ECMA 连接器主机,以查看用户是否存在。 它使用 匹配属性 作为筛选器。 此属性在企业应用程序 ( 本地预配 -> 预配 -> 预配 -> 属性匹配)下的 Microsoft Entra 管理中心中定义。 它用 1 表示优先级顺序。 可以定义一个或多个匹配属性,并根据优先级设置它们优先级。 如果想要更改匹配属性,也可以这样做。
ECMA 连接器主机接收 GET 请求并查询其内部缓存,以查看用户是否存在以及是否已被导入。 这是使用上面的匹配属性完成的。 如果定义多个匹配属性,Microsoft Entra 预配服务会为每个属性发送 GET 请求,ECMA 主机会检查其缓存中的匹配项,直到找到匹配项。
如果用户不存在,Microsoft Entra ID 发出 POST 请求来创建用户。 ECMA 连接器主机向 Microsoft Entra ID 返回 HTTP 201 响应,并为用户提供 ID。 此 ID 派生自对象类型页中定义的定位点值。 此锚点将由 Microsoft Entra ID 用于查询 ECMA 连接器主机,以处理将来及后续的请求。
如果 Microsoft Entra ID 中用户信息发生更改,Microsoft Entra ID 将发出 GET 请求,以使用上一步中的锚点检索用户,而不是使用步骤 1 中的匹配属性。 例如,这允许 UPN 更改,而不会中断Microsoft Entra ID 和应用中用户之间的链接。
代理最佳做法
-
- 避免对代理与 Azure 之间的出站 TLS 通信进行任何形式的内联检查。 这种类型的内联检查会导致通信流降低。
- 代理必须与 Azure 和应用程序通信,因此代理的位置会影响这两个连接的延迟。 可以通过优化每个网络连接来最大程度地减少端到端流量的延迟。 优化每个连接的方法包括:
- 减少跃点两端之间的距离。
- 选择要遍历的正确网络。 例如,由于专用链接,遍历专用网络而不是公共 Internet 的速度可能更快。
- 代理使用证书进行安全通信。 有关系统使用的两个证书的详细信息,包括过期行为和建议以供生产使用,请参阅 证书管理。
证书管理
本地应用程序预配依赖于两个不同的证书。 了解这两个证书有助于规划生产部署、监视代理运行状况以及防止服务中断。
ECMA 连接器主机证书
Microsoft Entra ECMA 连接器主机在端口 8585(https://localhost:8585/ecma2host_<connectorName>/scim)上公开 HTTPS 终结点,供预配代理调用。 ECMA 连接器主机使用的 TLS 证书保护该终结点。 首次运行
有关 ECMA 连接器主机证书的关键事实:
- 自签名证书仅用于测试。 默认情况下,它会在两年内过期,无法撤销。 Microsoft建议使用受信任的证书颁发机构(CA)颁发的证书进行生产使用。
- 证书使用者必须与安装了 ECMA 连接器主机的 Windows 服务器的主机名匹配。 有关详细信息,请参阅 SSL 证书。
- 手动替换过期的证书。 转到 ECMA 主机的 “设置” 选项卡以查看证书到期日期。 如果证书已过期,请选择“ 生成证书 ”以创建新证书。 有关分步指南,请参阅 排查测试连接问题。
预配代理注册证书
预配代理使用单独的证书在安装过程中向Microsoft混合标识服务(HIS)注册自身。 代理在设置过程中创建此证书,并使用Microsoft Entra令牌将代理和证书注册到 HIS 注册服务。 有关代理如何向 HIS 注册的详细信息,请参阅 代理安装。
Important
云同步记录了相关的清理方案:当云同步代理已卸载或停止且证书过期时,代理将永久删除,并且无法再与Microsoft 服务交互。 有关详细信息,请参阅 卸载后从门户中删除代理。 对于本地应用程序预配,如果需要注册证书生存期或恢复过程的指南,请联系Microsoft支持人员。
若要将服务中断的风险降到最低:
- 通过Microsoft Entra 管理中心定期监视代理运行状况。
- 在两年自签名证书到期之前规划更换 ECMA 连接器主机证书。
- 对于生产部署,请将自签名 ECMA 连接器主机证书替换为受信任的 CA 颁发的证书。
高可用性
为高可用性/故障转移方案提供了以下信息。
对于使用 ECMA 连接器的本地应用:建议为每个数据中心配置一个主动代理和一个被动代理(已配置但停止使用,且未分配给 Microsoft Entra 中的企业应用)。
执行故障转移时,建议执行以下操作:
- 停止活跃代理(A)。
- 从企业应用程序取消分配代理 A。
- 重启被动代理(B)。
- 将代理 B 分配到企业应用程序。
对于使用 SCIM 连接器的本地应用:建议每个应用程序有两个活动代理。
预配代理问题
此处回答了一些常见问题。
如何查看预配代理的版本?
- 登录到安装预配代理的 Windows 服务器。
- 转到 控制面板>卸载或更改程序。
- 查找与 Microsoft Entra Connect 预配代理条目对应的版本。
是否可以在运行 Microsoft Entra Connect 或 Microsoft Identity Manager 的同一台服务器上安装预配代理?
是的。 可以在运行 Microsoft Entra Connect 或 Microsoft Identity Manager 的同一台服务器上安装预配代理,但这不是必需的。
如何将预配代理配置为使用代理服务器进行出站 HTTP 通信?
配置代理支持使用出站代理服务。 可以通过编辑代理配置文件 C:\Program Files\Azure AD Connect Provisioning Agent\AADConnectProvisioningAgent.exe.config对其进行配置。将以下行添加到文件末尾,紧跟在结束 </configuration> 标记之前。 将变量 [proxy-server] 和 [proxy-port] 替换为代理服务器名称和端口值。
<system.net>
<defaultProxy enabled="true" useDefaultCredentials="true">
<proxy
usesystemdefault="true"
proxyaddress="http://[proxy-server]:[proxy-port]"
bypassonlocal="true"
/>
</defaultProxy>
</system.net>
如何确保预配代理可以与 Microsoft Entra 租户通信,并且没有防火墙阻止代理所需的端口?
还可以检查所有必需的端口是否处于打开状态。
如何卸载预配代理?
- 登录到安装预配代理的 Windows 服务器。
- 转到 控制面板>卸载或更改程序。
- 卸载以下程序:
- Microsoft Entra Connect 预配代理
- Microsoft Entra Connect 代理更新程序
- Microsoft Entra Connect 预配代理包