将本地 Active Directory 域与 Microsoft Entra ID 集成
Microsoft Entra ID 是基于云的目录和标识服务。 此参考体系结构展示了将本地 Active Directory 域与 Microsoft Entra ID 集成以提供基于云的标识身份验证的最佳做法。
Architecture
下载此体系结构的 Visio 文件。
Note
为简单起见,此关系图仅显示与Microsoft Entra ID 直接相关的连接,而不是身份验证和联合身份验证过程中可能发生的与协议相关的流量。 例如,Web 应用程序可能会重定向 Web 浏览器,以通过 Microsoft Entra ID 对请求进行身份验证。 身份验证后,可以将请求传递回 Web 应用程序以及相应的标识信息。
Components
Microsoft Entra 租户: 由组织创建的 Microsoft Entra ID 的实例。 它通过存储从本地 Active Directory 中复制的对象,充当云应用程序的目录服务,并提供标识服务。
Web 层子网: 此子网托管运行 Web 应用程序的虚拟机(VM)。 Microsoft Entra ID 充当此应用程序的标识代理。
本地 Active Directory 域服务 (AD DS) 服务器: 本地目录和标识服务。 AD DS 目录可与 Microsoft Entra ID 同步,从而能够对本地用户进行身份验证。
Microsoft Entra Connect Sync 服务器: 运行 Microsoft Entra Connect 同步服务的本地计算机。 此服务使用 Microsoft Entra ID 同步存储在本地 Active Directory 中的信息。 例如,在本地预配或取消预配用户和组会自动将这些更改同步到 Microsoft Entra ID。
Note
出于安全原因,Microsoft Entra ID 将用户密码存储为哈希。 如果用户需要密码重置,则必须在本地执行重置,并且必须将更新的哈希发送到 Microsoft Entra ID。 Microsoft Entra ID P1 或 P2 版本包括允许在云中启动密码更改的功能,然后将其写回到本地 AD DS。
N 层应用程序的 VM: 通过将工作负荷拆分为单个层(例如 Web、业务逻辑和数据),支持可缩放、可复原和安全应用程序的 VM。 有关这些资源的详细信息,请参阅 VM 上的 N 层体系结构。
Scenario details
可能的用例
请考虑此参考体系结构的以下典型用途:
部署在 Azure 中的 Web 应用程序,用于为属于组织的远程用户提供访问权限。
为客户实现自助服务功能,例如重置其密码和委派组管理。 此功能需要Microsoft Entra ID P1 或 P2 版本。
使用 VPN 隧道或 Azure ExpressRoute 线路连接本地网络和应用程序的 Azure 虚拟网络的体系结构。
Note
Microsoft Entra ID 可对组织目录中存在的用户和应用程序的标识进行身份验证。 某些应用程序和服务(如 SQL Server)可能需要计算机身份验证,在这种情况下,此解决方案不适用。
Recommendations
您可以将以下建议应用于大多数场景。 除非有优先于这些建议的特定要求,否则请遵循这些建议。
配置 Microsoft Entra Connect Sync 服务
Microsoft Entra Connect Sync 服务可确保存储在云中的标识信息与保存在本地的标识信息保持一致。 使用 Microsoft Entra Connect 软件安装此服务。
在实现 Microsoft Entra Connect Sync 之前,请确定组织的同步要求。 例如,考虑要同步的内容、要包含的域以及同步的频率。
可以在本地托管的 VM 或计算机上运行 Microsoft Entra Connect Sync 服务。 与 Microsoft Entra ID 初次同步后,Microsoft Entra Connect Sync 服务上的负载一般不会很高,具体取决于 Active Directory 目录中信息的易变性。 如果在 VM 上运行该服务,可以在需要时更轻松地缩放服务器。 Monitor the activity on the VM as described in the Monitoring considerations section to determine whether scaling is necessary.
如果林中有多个本地域,建议将整个林的信息存储和同步到单个Microsoft Entra 租户。 筛选在多个域中发生的标识的信息,以便每个标识仅在Microsoft Entra ID 中出现一次,而不是重复。 复制可能会导致数据同步时不一致。 有关详细信息,请参阅 “验证网络拓扑 ”部分。
使用筛选,以便仅在 Microsoft Entra ID 中存储必要的数据。 例如,组织可能不想在 Microsoft Entra ID 中存储有关停用帐户的信息。 可以按组、按域、按组织单位 (OU) 或按属性进行筛选。 可以组合使用多个筛选器,以生成更复杂的规则。 例如,可以同步域中保存的对象,这些对象具有所选属性中的特定值。 有关详细信息,请参阅 Microsoft Entra Connect Sync:配置筛选。
若要实现 Active Directory Connect 同步服务的高可用性,请运行辅助暂存服务器。 For more information, see Staging mode.
Note
Microsoft Entra 云同步 是Microsoft产品/服务,旨在实现用户、组和联系人同步到 Microsoft Entra ID 的混合标识目标。 使用 Microsoft Entra 云同步,在 Microsoft 365 中协调从 Active Directory 预配到 Microsoft Entra ID。
验证安全配置和策略
用户密码管理。 Microsoft Entra ID P1 或 P2 版本支持密码写回。 此功能使本地用户能够在 Azure 门户中执行自助密码重置。 只有在查看组织的密码安全策略后,才应启用此功能。 例如,可以限制哪些用户可以更改其密码,并且可以自定义密码管理体验。 有关详细信息,请参阅 [自定义 Microsoft Entra 自助密码重置的用户体验]。
保护可从外部访问的本地应用程序。 可使用 Microsoft Entra 应用程序代理,通过 Microsoft Entra ID 为网络外部的用户提供对本地 Web 应用程序的受控访问权限。 只有 Azure 目录中具有有效凭据的用户才有权使用该应用程序。 有关详细信息,请参阅 在 Microsoft Entra ID 中启用应用程序代理。
主动监视 Microsoft Entra ID 中的可疑活动迹象。 请考虑使用 Microsoft Entra ID P2 版本,其中包括 Microsoft Entra ID Protection。 ID 保护使用自适应机器学习算法和启发式检测异常和风险事件,这些异常和风险事件可能指示标识已泄露。 例如,它可以检测潜在的异常活动,例如不规则的登录活动、来自未知来源或具有可疑活动的 IP 地址的登录,或者从可能受感染的设备登录。 “标识保护”使用此数据生成报表和警报,使你能够调查这些风险事件并采取相应的措施。 For more information, see ID Protection.
可以使用 Azure 门户中Microsoft Entra ID 的报告功能监视系统中发生的与安全相关的活动。 有关如何使用这些报告的详细信息,请参阅 Microsoft Entra 监视和运行状况。
验证网络拓扑
配置 Microsoft Entra Connect,以实现最符合组织要求的拓扑。 Microsoft Entra Connect 支持以下拓扑:
单个林,单个Microsoft Entra 目录: 在此拓扑中,Microsoft Entra Connect 将单个本地林中的一个或多个域的对象和标识信息同步到单个Microsoft Entra 租户中。 此拓扑是 Microsoft Entra Connect 快速安装的默认实现。
Note
请勿使用多个Microsoft Entra Connect Sync 服务器将同一本地林中的不同域连接到同一个 Microsoft Entra 租户。 仅当其中一台服务器在暂存模式下运行时,此配置才适用,如以下部分所述。
多个林,单个Microsoft Entra 目录: 在此拓扑中,Microsoft Entra Connect 将多个林中的对象和标识信息同步到单个Microsoft Entra 租户中。 如果组织有多个本地林,则使用此拓扑。 可以合并标识信息,以便在 Microsoft Entra 目录中一次表示每个唯一用户,即使该用户存在于多个林中也是如此。 所有林使用同一台 Microsoft Entra Connect Sync 服务器。 Microsoft Entra Connect Sync 服务器不必属于任何域,但必须可从所有林访问该服务器。
Note
在此拓扑中,请勿使用不同的 Microsoft Entra Connect Sync 服务器将每个本地林连接到单个 Microsoft Entra 租户。 如果用户存在于多个林中,则此配置可能会导致Microsoft Entra ID 中的重复标识信息。
多个林,单独的拓扑: 此拓扑将标识信息从单独的林合并到单个Microsoft Entra 租户中,并将所有林视为单独的实体。 如果合并来自不同组织的林,并且每个用户的标识信息仅保存在一个林中,则此拓扑非常有用。
Note
如果同步每个林中的全局地址列表,则一个林中的用户可能作为联系人存在于另一个林中。 如果组织已使用 Forefront Identity manager 2010 或 Microsoft Identity Manager 2016 实现 GALSync,则可能会出现此行为。 In this scenario, you can specify that users should be identified by their Mail attribute. You can also match identities by using the ObjectSID and msExchMasterAccountSID attributes. 如果你有一个或多个已禁用帐户的资源林,则此方法非常有用。
Staging server: In this configuration, you run a second instance of the Microsoft Entra Connect Sync server in parallel with the first. 此结构支持以下方案:
High availability
测试和部署 Microsoft Entra Connect 同步服务器的新配置
引入新服务器并解除旧配置授权
In these scenarios, the second instance runs in staging mode. 服务器在其数据库中记录导入的对象和同步数据,但不会将数据传递给 Microsoft Entra ID。 如果禁用暂存模式,服务器将开始将数据写入Microsoft Entra ID。 它还会在适当的情况下开始在本地目录中执行密码写回。 有关详细信息,请参阅 Microsoft Entra Connect Sync:操作任务和注意事项。
多个Microsoft Entra 目录: 通常为组织创建单个Microsoft Entra 目录。 但在某些情况下,可能需要跨单独的Microsoft Entra 目录对信息进行分区。 在这种情况下,通过确保本地林中的每个对象仅出现在一个Microsoft Entra 目录中,从而避免同步和密码写回问题。 若要实现此方案,请为每个 Microsoft Entra 目录配置不同的 Microsoft Entra Connect Sync 服务器,并使用筛选,以便各 Microsoft Entra Connect Sync 服务器在一组互相排斥的对象上运行。
有关这些拓扑的详细信息,请参阅 Microsoft Entra Connect 的拓扑。
配置用户身份验证方法
默认情况下,Microsoft Entra Connect Sync 服务器在本地域和 Microsoft Entra ID 之间配置密码哈希同步。 Microsoft Entra 服务假定用户通过提供他们在本地使用的相同密码进行身份验证。 许多组织支持这种策略,但你应当考虑自己组织现有的策略和基础结构。 请考虑下列因素:
组织的安全策略可能会禁止将密码哈希同步到云。 In this case, your organization should consider pass-through authentication.
你可能要求用户从公司网络访问已加入域的计算机中的云资源时,使用无缝单一登录 (SSO)。
你的组织可能已经部署了 Active Directory 联合身份验证服务(AD FS)或非Microsoft联合身份验证提供程序。 可以将 Microsoft Entra ID 配置为使用此基础结构来实现身份验证和 SSO,而不是使用云中保存的密码信息。
有关详细信息,请参阅 Microsoft Entra Connect 用户登录选项。
配置 Microsoft Entra 应用程序代理
使用 Microsoft Entra ID 可提供对本地应用程序的访问。
使用Microsoft Entra 应用程序代理组件管理的应用程序代理连接器公开本地 Web 应用程序。 应用程序代理连接器打开到 Microsoft Entra 应用程序代理的出站网络连接。 远程用户的请求通过此代理连接从 Microsoft Entra ID 路由回 Web 应用。 此配置无需在本地防火墙中打开入站端口,减少了贵组织暴露的受攻击面。
有关详细信息,请参阅 使用 Microsoft Entra 应用程序代理发布应用程序。
配置 Microsoft Entra 对象同步
Microsoft Entra Connect 的默认配置根据 Microsoft Entra Connect 同步中指定的规则同步本地 Active Directory 目录中的对象 :了解默认配置。 将同步满足这些规则的对象,而忽略所有其他对象。 请考虑以下示例规则:
User objects must have a unique sourceAnchor attribute and the accountEnabled attribute must be populated.
User objects must have a sAMAccountName attribute and can't start with the text Azure AD_ or MSOL_.
Microsoft Entra Connect 对用户、联系人、组、ForeignSecurityPrincipal 和 Computer 对象应用多个规则。 如果需要修改默认规则集,请使用随 Microsoft Entra Connect 一起安装的同步规则编辑器。
也可以定义自己的筛选器,以限制域或 OU 要同步的对象。 Alternatively, you can implement more complex custom filtering.
配置监视代理
本地安装的以下代理执行运行状况监视:
Microsoft Entra Connect 安装了一个用于捕获同步操作相关信息的代理。 可使用 Azure 门户中的 Microsoft Entra Connect Health 边栏选项卡监视其运行状况和性能。 有关详细信息,请参阅 使用 Microsoft Entra Connect Health 进行同步。
若要从 Azure 监视 AD DS 域和目录的运行状况,请在本地域内的计算机上安装用于 AD DS 代理的 Microsoft Entra Connect Health。 可使用 Azure 门户中的 Microsoft Entra Connect Health 边栏选项卡监视运行状况。 有关详细信息,请参阅 将 Microsoft Entra Connect Health 与 AD DS 配合使用。
安装 Microsoft Entra Connect Health for AD FS 代理以监视在本地运行的服务的运行状况,并使用 Azure 门户中的 Microsoft Entra Connect Health 边栏选项卡监视 AD FS。 有关详细信息,请参阅 将 Microsoft Entra Connect Health 与 AD FS 配合使用。
有关详细信息,请参阅 Microsoft Entra Connect Health 代理安装。
Considerations
这些注意事项实施 Azure 架构良好的框架的支柱原则,即一套可用于改进工作负荷质量的指导原则。 For more information, see Well-Architected Framework.
Reliability
可靠性有助于确保应用程序能够履行对客户的承诺。 有关详细信息,请参阅 可靠性的设计评审清单。
Microsoft Entra 服务是一种异地分布式服务,它在分布于世界各地的多个数据中心内运行,并提供自动故障转移功能。 如果数据中心不可用,Microsoft Entra ID 可确保目录数据在至少两个地理分布式数据中心内可供实例访问。
Note
Microsoft 365 应用 AD 层和高级服务的服务级别协议保证至少 99.9% 可用性。 Microsoft Entra ID 的免费层没有 SLA。 有关详细信息,请参阅 Microsoft Entra ID 的 SLA。
请考虑在过渡模式下预配 Microsoft Entra Connect Sync 服务器的第二个实例以提高可用性。
如果未使用 Microsoft Entra Connect 随附的 SQL Server Express LocalDB 实例,请考虑使用 SQL 群集来实现高可用性。 Microsoft Entra Connect 不支持镜像和 Always On 等解决方案。
有关实现 Microsoft Entra Connect 同步服务器的高可用性以及故障后如何恢复的其他注意事项,请参阅 Microsoft Entra Connect Sync:作任务和注意事项 - 灾难恢复。
安全性
安全性针对蓄意攻击及滥用宝贵数据和系统提供保障措施。 有关详细信息,请参阅 安全的设计评审清单。
使用Microsoft Entra 条件访问控制拒绝来自意外源的身份验证请求:
如果用户尝试从不受信任的位置(例如从 Internet 而不是受信任的网络)进行连接,则触发 Microsoft Entra 多重身份验证(MFA )。
使用用户的设备平台类型(如 iOS、Android 或 Windows)来确定对应用程序和功能的访问策略。
记录用户设备的启用或禁用状态。 将此信息合并到访问策略检查中。 例如,如果用户的手机丢失或被盗,则应将其记录为禁用状态,以防止其用于获取访问权限。
基于组成员资格控制用户对资源的访问权限。 可使用 Microsoft Entra 动态成员身份规则简化组管理。
使用 ID 保护基于条件访问风险的策略基于异常登录活动或其他事件提供高级保护。
有关详细信息,请参阅 基于风险的访问策略。
Cost Optimization
成本优化侧重于减少不必要的开支和提高运营效率的方法。 有关详细信息,请参阅 成本优化的设计评审清单。
使用 Azure 定价计算器估算成本。
请考虑以下成本注意事项:
Microsoft Entra Connect: Microsoft Entra Connect 同步功能在所有版本的 Microsoft Entra ID 中均可用。
使用 Microsoft Entra Connect 没有额外的许可证要求。 它包含在 Azure 订阅中。
有关 Microsoft Entra ID 版本的定价信息,请参阅 Microsoft Entra 定价。
N 层应用程序的 VM: 有关这些资源的成本信息,请参阅 Azure 虚拟机和规模集的体系结构最佳做法。
Operational Excellence
卓越运营涵盖部署应用程序并使其在生产环境中运行的运营流程。 有关详细信息,请参阅 卓越运营的设计评审清单。
Manageability
可从两方面管理 Microsoft Entra ID:
- 在云中管理Microsoft Entra ID
- 维护 Microsoft Entra Connect 同步服务器
Microsoft Entra ID 提供以下选项,用于在云中管理域和目录:
Microsoft Graph PowerShell 模块 用于编写常见Microsoft Entra 管理任务(例如用户管理、域管理和配置 SSO)的脚本。
Microsoft Azure 门户中的 Entra 管理边栏选项卡 提供目录的交互式管理视图。 它还使你能够控制和配置Microsoft Entra ID 的大部分方面。
Microsoft Entra Connect 通过安装以下工具来维护本地计算机中的 Microsoft Entra Connect Sync 服务:
Microsoft Entra Connect 控制台允许修改 Microsoft Entra Connect 同步服务器的配置、自定义同步的发生方式、启用或禁用暂存模式,以及切换用户登录模式。 可以使用本地基础结构启用 AD FS 登录。
Synchronization Service Manager 使用此工具中的 “作 ”选项卡来管理同步过程,并检测进程的任何部分是否已失败。 可以使用此工具手动触发同步。 The Connectors tab enables you to control the connections for the domains that the synchronization engine is attached to.
使用同步规则编辑器 可以自定义对象在本地目录和 Microsoft Entra ID 之间复制对象的方式。 使用此工具可以指定用于同步的额外属性和对象。 然后,它实现筛选器以确定应或不应同步的对象。 有关详细信息,请参阅 Microsoft Entra Connect Sync:了解默认配置 和 Microsoft Entra Connect Sync:更改默认配置的最佳做法。
DevOps
有关 DevOps 注意事项,请参阅 在 Azure 虚拟网络中部署 AD DS 中的卓越运营。
Performance Efficiency
性能效率是指工作负荷能够高效地缩放以满足用户需求。 有关详细信息,请参阅 性能效率的设计评审清单。
Microsoft Entra 服务支持基于副本的可伸缩性。 它有一个处理写入作和多个只读次要副本的主副本。 Microsoft Entra ID 以透明方式将尝试写入次要副本重定向到主副本,并保持最终一致性。 对主要副本进行的所有更改都会传播到次要副本。 此体系结构可有效地缩放,因为对 Microsoft Entra ID 执行的大多数作都是读取而不是写入作。 有关详细信息,请参阅 Microsoft Entra 体系结构。
对于 Microsoft Entra Connect Sync 服务器,应确定可能从本地目录同步的对象数。 如果对象少于 100,000 个,则可以使用随 Microsoft Entra Connect 一起提供的默认 SQL Server Express LocalDB 软件。 如果对象数量较大,请安装 SQL Server 的生产版本。 然后执行 Microsoft Entra Connect 的自定义安装,并指定它应使用现有的 SQL Server 实例。
Contributors
Microsoft维护本文。 以下参与者撰写了本文。
Principal author:
- Eric Woodruff | Product Technical Specialist
若要查看非公开的LinkedIn个人资料,请登录LinkedIn。
Next steps
- 查看 Microsoft Entra Connect 的拓扑 ,以确保Microsoft Entra Connect 的混合拓扑部署在受支持的配置中。
- 了解如何使用 条件访问部署 来保护对应用程序的访问。
- 有关在 Azure 中提供 AD DS 作为基础结构的详细信息,请查看 将本地 AD 与 Microsoft Entra ID 集成 。
- 如果要提供与本地或云基础结构即服务应用程序的Microsoft Entra 集成,请查看Microsoft Entra 应用程序代理 。
- 查看 标识管理最佳做法 ,因为标识是新的安全控制平面。
- 查看 安全特权访问 ,因为部署此解决方案需要高特权帐户。