你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

将本地 Active Directory 域与 Microsoft Entra ID 集成

Microsoft Entra ID
Azure 虚拟网络
Azure 虚拟机

Microsoft Entra ID 是基于云的目录和标识服务。 此参考体系结构展示了将本地 Active Directory 域与 Microsoft Entra ID 集成以提供基于云的标识身份验证的最佳做法。

体系结构

使用 Microsoft Entra ID 的混合云标识体系结构示意图。

通过 Microsoft 365 在线访问 Visio 图表。 请注意,必须拥有 Visio 许可证才能访问此图表。 或者下载此体系结构的 Visio 文件(请参阅 Visio 选项卡“Microsoft Entra ID”)。

注意

为简单起见,此图仅展示了与 Microsoft Entra ID 直接相关的连接,而未展示在身份验证和联合身份验证过程中可能产生的协议相关流量。 例如,Web 应用程序可能重定向 Web 浏览器,以便通过 Microsoft Entra ID 对请求进行身份验证。 经过身份验证后,可以将带有相应标识信息的请求传递回 Web 应用程序。

有关其他注意事项,请参阅选择用于将本地 Active Directory 与 Azure 相集成的解决方案

组件

该体系结构具有以下组件。

  • Microsoft Entra 租户。 由组织创建的 Microsoft Entra ID 实例。 它通过存储从本地 Active Directory 中复制的对象,充当云应用程序的目录服务,并提供标识服务。

  • Web 层子网。 此子网包含运行 Web 应用程序的 VM。 Microsoft Entra ID 可充当此应用程序的标识代理。

  • 本地 AD DS 服务器。 本地目录和标识服务。 AD DS 目录可与 Microsoft Entra ID 同步,从而能够对本地用户进行身份验证。

  • Microsoft Entra Connect Sync 服务器。 运行 Microsoft Entra Connect 同步服务的本地计算机。 此服务可将本地 Active Directory 中保存的信息同步到 Microsoft Entra ID。 例如,如果在本地预配或取消设置组和用户,这些更改会传播到 Microsoft Entra ID。

    注意

    出于安全原因,Microsoft Entra ID 以哈希形式存储用户的密码。 如果用户需要重置密码,则必须在本地执行,并且必须将新哈希发送到 Microsoft Entra ID。 Microsoft Entra ID P1 或 P2 版本包括允许在云中更改密码然后写回本地 AD DS 的功能。

  • N 层应用程序所用的 VM。 有关这些资源的详细信息,请参阅[运行 N 层体系结构所用的 VM][implementing-a-multi-tier-architecture-on-Azure]。

方案详细信息

可能的用例

此参考体系结构的典型用途包括:

  • 部署在 Azure 中的 Web 应用程序,用于为属于组织的远程用户提供访问权限。
  • 为最终用户实现自助服务功能,比如重置其密码,以及委派组管理。 这需要 Microsoft Entra ID P1 或 P2 版本。
  • 本地网络和应用程序的 Azure VNet 不使用 VPN 隧道或 ExpressRoute 线路进行连接的体系结构。

注意

Microsoft Entra ID 可对组织目录中存在的用户和应用程序的标识进行身份验证。 某些应用程序和服务(如 SQL Server)可能需要进行计算机身份验证,此解决方案不适合这种情况。

建议

以下建议适用于大多数方案。 除非有优先于这些建议的特定要求,否则请遵循这些建议。

配置 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 上运行该服务,可以在需要时更轻松地缩放服务器。 如“监视注意事项”部分中所述,监视 VM 上的活动,以确定是否有必要进行缩放。

如果林中有多个本地域,则建议存储整个林的信息并将信息同步到单个 Microsoft Entra 租户。 对出现在多个域中的标识的信息进行筛选,以便每个标识在 Microsoft Entra ID 中仅出现一次,而不是重复出现。 重复项会导致数据同步时出现不一致。 有关详细信息,请参阅下面的“拓扑”部分。

使用筛选,以便仅在 Microsoft Entra ID 中存储必要的数据。 例如,组织可能不想在 Microsoft Entra ID 中存储有关停用帐户的信息。 可以按组、按域、按组织单位 (OU) 或按属性进行筛选。 可以组合使用多个筛选器,以生成更复杂的规则。 例如,可以同步某个域中保存的、针对所选属性具有特定值的对象。 有关详细信息,请参阅 Microsoft Entra Connect Sync:配置筛选

若要实现 AD Connect 同步服务的高可用性,请运行辅助临时服务器。 有关详细信息,请参阅“拓扑建议”部分。

注意

Microsoft Entra Connect 云同步是 Microsoft 提供的一种新产品/服务,旨在满足和实现在 Microsoft Entra ID 中同步用户、组与联系人的混合标识目标。 使用 Microsoft Entra Connect 云同步时,从 AD 到 Microsoft Entra ID 的预配将在 Microsoft Online Services 中经过协调。

验证安全配置和策略

用户密码管理。 Microsoft Entra ID P1 或 P2 版本支持密码写回,从而允许本地用户从 Azure 门户执行自助密码重置。 在审查组织的密码安全策略后才能启用该功能。 例如,可限制哪些用户可以更改其密码,并定制密码管理体验。 有关详细信息,请参阅自定义密码管理以满足组织的需求

保护可从外部访问的本地应用程序。 可使用 Microsoft Entra 应用程序代理,通过 Microsoft Entra ID 为网络外部的用户提供对本地 Web 应用程序的受控访问权限。 只有在你的 Azure 目录中具有有效凭据的用户才有权使用该应用程序。 有关详细信息,请参阅在 Azure 门户中启用应用程序代理一文。

主动监视 Microsoft Entra ID 中的可疑活动迹象。 请考虑使用 Microsoft Entra ID P2 版本,其中包括 Microsoft Entra ID Protection。 “标识保护”使用自适应机器学习算法和启发式学习法来检测异常行为以及可能表示标识已遭入侵的风险事件。 例如,它可以检测到潜在的异常活动,比如异常登录活动,来自未知来源或活动可疑的 IP 地址的登录,或者来自可能受感染的设备的登录。 “标识保护”使用此数据生成报表和警报,使你能够调查这些风险事件并采取相应的措施。 有关详细信息,请参阅 Microsoft Entra ID 保护

可以在 Azure 门户中使用 Microsoft Entra ID 的报告功能,来监视系统中发生的与安全相关的活动。 有关使用这些报告的详细信息,请参阅 Microsoft Entra ID 报告指南

验证网络拓扑

配置 Microsoft Entra Connect,以实现最符合组织要求的拓扑。 Microsoft Entra Connect 支持的拓扑包括:

  • 单个林、单个 Microsoft Entra 目录。 在此拓扑中,Microsoft Entra Connect 将单个本地林的一个或多个域中的对象和标识信息同步到单个 Microsoft Entra 租户。 此拓扑是 Microsoft Entra Connect 快速安装的默认实现。

    注意

    除非在临时模式下运行服务器(如下所述),否则不要使用多台 Microsoft Entra Connect Sync 服务器将同一本地林中的不同域连接到同一 Microsoft Entra 租户。

  • 单个林、单个 Microsoft Entra 目录。 在此拓扑中,Microsoft Entra Connect 将多个林中的对象和标识信息同步到单个 Microsoft Entra 租户。 如果组织有多个本地林,则使用此拓扑。 你可以合并标识信息,以便每个唯一的用户在 Microsoft Entra 目录中只出现一次,即使用户存在于多个林也是如此。 所有林使用同一台 Microsoft Entra Connect Sync 服务器。 Microsoft Entra Connect Sync 服务器不必属于任何域,但必须可从所有林访问该服务器。

    注意

    在此拓扑中,请勿使用不同的 Microsoft Entra Connect Sync 服务器将每个本地林连接到单个 Microsoft Entra 租户。 如果用户同时存在于多个林,这会导致 Microsoft Entra ID 中的标识信息重复。

  • 多个林,不同的拓扑。 此拓扑将不同林中的标识信息合并到单个 Microsoft Entra 租户,并视所有林为不同的实体。 如果合并来自不同组织的林,并且每个用户的标识信息仅保存在一个林中,则此拓扑非常有用。

    注意

    如果同步每个林中的全局地址列表 (GAL),则一个林中的用户可能会以联系人的身份出现在另一个林中。 如果组织已使用 Forefront Identity Manager 2010 或 Microsoft Identity Manager 2016 实现 GALSync,则会出现此问题。 在这种情况下,可以指定应通过 Mail 属性识别用户。 也可以使用 ObjectSIDmsExchMasterAccountSID 属性匹配标识。 如果有一个或多个包含已禁用帐户的资源林,则此方法很有用。

  • 临时服务器。 在此配置中,将 Microsoft Entra Connect Sync 服务器的第二个实例与第一个实例并行运行。 此结构支持如下方案:

    • 高可用性。

    • 测试和部署 Microsoft Entra Connect Sync 服务器的新配置。

    • 引入新服务器,并取消旧配置。

      在这些方案中,第二个实例在临时模式下运行。 服务器将导入的对象和同步数据记录到数据库中,但不将数据传递给 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 服务假定用户通过提供他们在本地使用的相同密码进行身份验证。 许多组织支持这种策略,但你应当考虑自己组织现有的策略和基础结构。 例如:

  • 组织的安全策略可能禁止将密码哈希同步到云。 在这种情况下,组织应考虑直通身份验证
  • 你可能要求用户从公司网络访问已加入域的计算机中的云资源时,使用无缝单一登录 (SSO)。
  • 你的组织可能已部署 Active Directory 联合身份验证服务 (AD FS) 或第三方联合身份验证提供程序。 你可以将 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 Sync:了解默认配置一文中指定的规则同步本地 Active Directory 目录中的对象。 将同步满足这些规则的对象,而忽略所有其他对象。 一些示例规则:

  • 用户对象必须具有唯一的 sourceAnchor 属性,并且必须已填充 accountEnabled 属性。
  • 用户对象必须具有 sAMAccountName 属性,并且不能以文本 Azure AD_ 或 MSOL_ 开头。

Microsoft Entra Connect 可向 User、Contact、Group、ForeignSecurityPrincipal 和 Computer 对象应用多种规则。 如果需要修改默认规则集,请使用随 Microsoft Entra Connect 一起安装的同步规则编辑器。 有关详细信息,请参阅 Microsoft Entra Connect Sync:了解默认配置)。

也可以定义自己的筛选器,以限制域或 OU 要同步的对象。 或者,还可以如 Microsoft Entra Connect Sync:配置筛选中所述,实施更复杂的自定义筛选。

配置监视代理

运行状况监视由安装在本地的以下代理执行:

  • 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 结合使用
  • 安装用于 AD FS 代理的 Microsoft Entra Connect Health,以监视本地运行的服务的运行状况,并使用 Azure 门户中的 Microsoft Entra Connect Health 边栏选项卡监视 AD FS。 有关详细信息,请参阅 将 Microsoft Entra Connect Health 与 AD FS 结合使用

有关安装 AD Connect Health 代理及其要求的详细信息,请参阅 Microsoft Entra Connect Health 代理安装

注意事项

这些注意事项实施 Azure 架构良好的框架的支柱原则,即一套可用于改善工作负荷质量的指导原则。 有关详细信息,请参阅 Microsoft Azure 架构良好的框架

可靠性

可靠性可确保应用程序符合你对客户的承诺。 有关详细信息,请参阅可靠性支柱概述

Microsoft Entra 服务是一种异地分布式服务,它在分布于世界各地的多个数据中心内运行,并提供自动故障转移功能。 如果某个数据中心不可用,Microsoft Entra ID 可确保分散在不同区域的至少两个数据中心的目录数据可供实例访问。

注意

Microsoft 365 应用版 AD 层和 Premium 服务的服务级别协议 (SLA) 保证至少 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 Sync 服务器高可用性以及如何在发生故障后恢复的其他注意事项,请参阅 Microsoft Entra Connect Sync:操作任务和注意事项 - 灾难恢复

安全性

安全性针对蓄意攻击及滥用宝贵数据和系统提供保障措施。 有关详细信息,请参阅安全性支柱概述

可使用条件访问控制拒绝来自意外来源的身份验证请求:

  • 如果用户尝试从不受信任的位置(例如通过 Internet 而不是受信任的网络)进行连接,则触发 Microsoft Entra 多重身份验证 (MFA)

  • 使用用户的设备平台类型(iOS、Android、Windows Mobile、Windows)来确定应用程序和功能的访问策略。

  • 记录用户设备的启用/禁用状态,并将此信息合并到访问策略检查中。 例如,如果用户的电话丢失或被盗,应将它记录为已禁用,防止有人用它来获取访问权限。

  • 基于组成员资格控制用户对资源的访问权限。 可使用 Microsoft Entra 动态成员身份规则简化组管理。 有关其工作原理的简要概述,请参阅组动态成员资格简介

  • 将条件访问风险策略与 Microsoft Entra ID Protection 结合使用,基于异常登录活动或其他事件提供高级保护。

有关详细信息,请参阅 Microsoft Entra 条件访问

成本优化

成本优化是关于寻找减少不必要的费用和提高运营效率的方法。 有关详细信息,请参阅成本优化支柱概述

使用 Azure 定价计算器估算成本。

成本注意事项包括:

  • Microsoft Entra Connect - Microsoft Entra Connect 同步功能在所有版本的 Microsoft Entra ID 中均可用。

    • 使用 Microsoft Entra Connect 没有额外的许可要求,并且包含在 Azure 订阅中。

    • 有关 Microsoft Entra ID 版本的定价信息,请参阅 Microsoft Entra 定价

  • N 层应用程序的 VM - 有关这些资源的成本信息,请参阅[运行 N 层体系结构所用的 VM][implementing-a-multi-tier-architecture-on-Azure]。

卓越运营

卓越运营涵盖了部署应用程序并使其在生产环境中保持运行的运营流程。 有关详细信息,请参阅卓越运营支柱概述

可管理性

可从两方面管理 Microsoft Entra ID:

  • 在云中管理 Microsoft Entra ID。
  • 维护 Microsoft Entra Connect Sync 服务器。

Microsoft Entra ID 提供以下选项,用于在云中管理域和目录:

Microsoft Entra Connect 通过安装以下工具来维护本地计算机中的 Microsoft Entra Connect Sync 服务:

  • Microsoft Entra Connect 控制台 - 可用于修改 Azure AD Sync 服务器的配置、自定义同步方式、启用或禁用临时模式以及切换用户登录模式。 可使用本地基础结构启用 Active Directory FS 登录。
  • Synchronization Service Manager - 此工具中的“操作”选项卡用于管理同步过程并检测该过程的任何环节是否失败。 可以使用此工具手动触发同步。 连接器选项卡用于控制同步引擎附加到的域的连接。
  • 同步规则编辑器 - 可用于自定义在本地目录与 Microsoft Entra ID 之间复制对象时对象的转换方式。 使用此工具,可指定同步的其他属性和对象,然后执行筛选器以确定应该同步或不应该同步的对象。 有关详细信息,请参阅 Microsoft Entra Connect Sync:了解默认配置文档中的“同步规则编辑器”部分。

有关管理 Microsoft Entra Connect 的详细信息和提示,请参阅 Microsoft Entra Connect Sync:有关更改默认配置的最佳做法

DevOps

有关 DevOps 的注意事项,请参阅将 Active Directory 域服务 (AD DS) 扩展到 Azure 中的卓越运营。

性能效率

性能效率是指工作负荷能够以高效的方式扩展以满足用户对它的需求。 有关详细信息,请参阅性能效率要素概述

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 的现有实例。

作者

本文由 Microsoft 维护, 它最初是由以下贡献者撰写的。

首席作者:

若要查看非公开的 LinkedIn 个人资料,请登录到 LinkedIn。

后续步骤