Microsoft Entra 直通身份验证:快速入门

部署 Microsoft Entra 直通身份验证

借助 Microsoft Entra 直通身份验证,用户可使用相同的密码登录到本地应用程序和基于云的应用程序。 直通身份验证通过直接针对本地 Active Directory 验证用户密码来使其登录。

重要

如果要从 AD FS(或其他联合技术)迁移到直通身份验证,请查看 用于将应用程序迁移到 Microsoft Entra ID 的资源

注意

如果要使用 Azure 政府云部署直通身份验证,请查看 Azure 政府版的混合标识注意事项

按照以下说明在租户上部署直通身份验证:

步骤 1:检查先决条件

请确保符合以下先决条件:

重要

从安全角度来看,管理员应该将运行 PTA 代理的服务器视为域控制器。 应按照保护域控制器免受攻击中所述的同样方式,对 PTA 代理服务器进行强化

在 Microsoft Entra 管理中心

  1. 在 Microsoft Entra 租户上创建仅限云的混合标识管理员帐户或混合标识管理员帐户。 这样一来,就可以在本地服务出现故障或不可用时管理租户的配置。 了解如何添加仅限云的混合标识管理员帐户。 完成此步骤至关重要,可确保自己不被锁定在租户外部。
  2. 向 Microsoft Entra 租户添加一个或多个自定义域名。 用户可以使用其中一个域名登录。

在本地环境中

  1. 确定一个运行 Windows Server 2022、Windows Server 2019 或 Windows Server 2016 的服务器来运行 Microsoft Entra Connect。 如果尚未启用,请在服务器上启用 TLS 1.2。 将该服务器添加到与需要验证其密码的用户同一 Active Directory 林中。 应注意,不支持在 Windows Server Core 版本上安装 Pass-Through 身份验证代理。

  2. 在上一步中标识的服务器上安装最新版 Microsoft Entra Connect。 如果已在运行 Microsoft Entra Connect,请确保运行的是支持的版本。

    注意

    Microsoft Entra Connect 版本 1.1.557.0、1.1.558.0、1.1.561.0 和 1.1.614.0 存在与密码哈希同步有关的问题。 如果打算将密码哈希同步与直通身份验证结合使用,请参阅 Microsoft Entra Connect 发行说明

  3. 标识另一台运行 Windows Server 2022、Windows Server 2019 或启用了 TLS 1.2 的 Windows Server 2016 的服务器,可在其中运行独立的身份验证代理。 需要这些额外的服务器来确保登录请求的高可用性。 将这些服务器添加到需要验证其密码的用户所在的同一 Active Directory 林中。

    重要

    在生产环境中,我们建议你在租户上至少运行 3 个身份验证代理。 每个租户的系统限制为 40 个身份验证代理。 最佳做法是将运行身份验证代理的所有服务器视为第 0 层系统(请参阅参考)。

  4. 如果服务器与 Microsoft Entra ID 之间存在防火墙,请配置以下项:

    • 确保身份验证代理可以通过以下端口向 Microsoft Entra ID 发出出站请求:

      端口号 用途
      80 下载证书吊销列表 (CRL) 的同时验证 TLS/SSL 证书
      443 处理与服务的所有出站通信
      8080(可选) 如果端口 443 不可用,身份验证代理每 10 分钟通过端口 8080 报告其状态。 此状态显示在 Microsoft Entra 管理中心。 用户登录不会使用端口 8080。

      如果防火墙根据原始用户强制实施规则,请打开这些端口以允许来自作为网络服务运行的 Windows 服务的流量。

    • 如果您的防火墙或代理允许您将 DNS 条目添加到允许列表,请添加与 *.msappproxy.net 和 *.servicebus.windows.net 通信的连接。 否则,请允许访问每周更新的 Azure 数据中心 IP 范围

    • 避免在 Azure Passthrough 代理与 Azure 终结点之间,对出站 TLS 通信进行各类形式的内联检查和终止。

    • 如果有传出 HTTP 代理,请确保此 URL (autologon.microsoftazuread-sso.com) 被列入允许列表中。 应显式指定此 URL,因为通配符可能不被接受。

    • 身份验证代理首次注册需要访问 login.windows.netlogin.microsoftonline.com。 另外,还请为这些 URL 打开防火墙。

    • 对于证书验证,请取消阻止以下 URL:crl3.digicert.com:80、crl4.digicert.com:80、ocsp.digicert.com:80、wwwd-trust.net:80、root-c3-ca2-2009.ocsp.d-trust.net:80、crl.microsoft.com:80、oneocsp.microsoft.com:80 和 ocsp.msocsp.com:80。 由于这些 URL 用于与其他微软产品进行证书验证,因此你可能已经取消阻止了这些 URL。

Azure 政府云的先决条件

在根据步骤 2 通过 Microsoft Entra Connect 启用直通身份验证之前,请先从 Microsoft Entra 管理中心下载最新版本的 PTA 代理。 需确保代理版本为 1.5.1742.0. 或更高版本。 若要验证代理,请参阅升级身份验证代理

下载最新版本的代理后,请按照以下说明继续操作,以通过 Microsoft Entra Connect 配置直通身份验证。

步骤 2:启用功能

通过 Microsoft Entra Connect 启用直通身份验证。

重要

可在 Microsoft Entra Connect 主服务器或暂存服务器上启用直通身份验证。 强烈建议从主服务器启用它。 如果将来要设置 Microsoft Entra Connect 暂存服务器, 则必须 继续选择“直通身份验证”作为登录选项;选择另一个选项将 禁用 租户上的直通身份验证,并覆盖主服务器中的设置。

如果是首次安装 Microsoft Entra Connect,请选择自定义安装路径。 在“用户登录”页面,选择“直通身份验证”作为“登录方法”。 成功完成后,将在 Microsoft Entra Connect 所在的同一服务器上安装直通身份验证代理。 此外,还会在租户中启用直通身份验证功能。

Microsoft Entra Connect:用户登录

如果已通过使用快速安装自定义安装路径安装 Microsoft Entra Connect,请在 Microsoft Entra Connect 上选择“更改用户登录”任务,然后选择“下一步”。 然后选择“直通身份验证”作为登录方法。 成功完成后,将在 Microsoft Entra Connect 所在的同一服务器上安装直通身份验证代理,并在租户中启用该功能。

Microsoft Entra Connect:更改用户登录

重要

直通身份验证是租户级功能。 启用此功能将影响租户内所有托管域中的用户登录方式。 如果你从 Active Directory 联合身份验证服务 (AD FS) 切换到直通身份验证,你应等待至少 12 小时以后再关闭 AD FS 基础结构。 此等待时间是为了确保用户在转换期间可以保持登录到 Exchange ActiveSync。 有关从 AD FS 迁移到直通身份验证的更多帮助,请查看我们在此处发布的部署计划。

步骤 3:测试功能

按照这些说明验证是否已正确启用直通身份验证:

  1. 使用租户的混合标识管理员凭据登录到 Microsoft Entra 管理中心

  2. 选择“Microsoft Entra ID”。

  3. 选择“Microsoft Entra Connect”。

  4. 验证“直通身份验证”功能是否显示为“已启用”

  5. 选择“直通身份验证”。 “直通身份验证”窗格列出了已安装身份验证代理的服务器。

    屏幕截图显示了 Microsoft Entra 管理中心:Microsoft Entra Connect 窗格。

    屏幕截图显示 Microsoft Entra 管理中心:“直通身份验证”窗格。

在此阶段,租户中所有托管域的用户都可以使用直通身份验证登录。 但是,联合域中的用户将继续使用 AD FS 或以前配置的其他联合身份验证提供程序登录。 如果将联合域转换为托管域,则该域中的所有用户将自动开始使用直通身份验证登录。 直通身份验证功能不会影响仅限云用户。

步骤 4: 确保高可用性

如果计划在生产环境中部署直通身份验证,则应安装其他独立身份验证代理。 在运行 Microsoft Entra Connect 的服务器之外的服务器上安装这些身份验证代理。 此设置可提供用户登录请求的高可用性。

重要

在生产环境中,我们建议你在租户上至少运行 3 个身份验证代理。 每个租户的系统限制为 40 个身份验证代理。 最佳做法是将运行身份验证代理的所有服务器视为第 0 层系统(请参阅参考)。

安装多个直通身份验证代理可以确保高可用性,但不会在身份验证代理之间实现确定性负载均衡。 若要确定租户所需的身份验证代理数,请考虑租户上预期出现的登录请求峰值和平均负载。 作为基准,单一身份验证代理可在标准的 4 核 CPU、16 GB RAM 服务器上每秒处理 300 到 400 个身份验证。

若要估算网络流量,请使用以下规格指南:

  • 每个请求的有效负载大小为 (0.5K + 1K * num_of_agents) 个字节,即从 Microsoft Entra ID 传输到身份验证代理的数据。 此处,“num_of_agents”表示在租户上注册的身份验证代理的数量。
  • 每个响应的有效负载大小为 1K 字节,即从身份验证代理传输到 Microsoft Entra ID 的数据。

对于大多数客户而言,总共三个身份验证代理足以满足高可用性和大容量需求。 应在域控制器附近安装身份验证代理以改善登录延迟。

若要开始,请按照以下说明下载身份验证代理软件:

  1. 若要下载最新版身份验证代理(版本 1.5.193.0 或更高版本),请使用租户的混合标识管理员凭据登录到 Microsoft Entra 管理中心

  2. 选择“Microsoft Entra ID”。

  3. 选择 Microsoft Entra Connect,选择 “连接同步 ”,然后选择“ 传递身份验证”,然后选择“ 下载”。

  4. 选择 “接受条款并下载 ”按钮。

    屏幕截图显示了 Microsoft Entra 管理中心:“下载身份验证代理”按钮。

注意

也可以直接下载身份验证代理软件。 安装身份验证代理之前 ,请查看并接受其服务条款

以下是部署独立身份验证代理的两种方法:

首先,可以只运行已下载的身份验证代理可执行文件,并在出现提示时提供租户的混合标识管理员凭据来交互式地执行此操作。

其次,还可以创建并运行无人参与的部署脚本。 如果希望同时部署多个身份验证代理,或在没有启用用户界面的 Windows 服务器上安装身份验证代理,或无法使用远程桌面进行访问时,这种方法非常有用。 以下是如何使用此方法的说明:

  1. 运行以下命令以安装身份验证代理:AADConnectAuthAgentSetup.exe REGISTERCONNECTOR="false" /q
  2. 可以通过我们的服务使用 PowerShell 注册身份验证代理。 创建包含租户混合标识管理用户名和密码的 PowerShell 凭据对象 $cred。 运行以下命令,替换 <username><password>
$User = "<username>"
$PlainPassword = '<password>'
$SecurePassword = $PlainPassword | ConvertTo-SecureString -AsPlainText -Force
$cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User, $SecurePassword
  1. 转到 C:\Program Files\Microsoft Azure AD Connect Authentication Agent 并使用创建的 对象运行以下脚本:
RegisterConnector.ps1 -modulePath "C:\Program Files\Microsoft Azure AD Connect Authentication Agent\Modules\" -moduleName "PassthroughAuthPSModule" -Authenticationmode Credentials -Usercredentials $cred -Feature PassthroughAuthentication

重要

如果在虚拟机上安装身份验证代理,则无法克隆虚拟机以设置另一个身份验证代理。 此方法不受支持

步骤 5:配置 Smart Lockout 功能

Smart Lockout 功能可帮助锁定那些试图猜测用户密码或使用暴力方法闯入的不良参与者。 通过在 Microsoft Entra ID 中配置 Smart Lockout 设置和/或在本地 Active Directory 中配置适当的锁定设置,可以在攻击访问 Active Directory 之前将其筛选掉。 阅读本文,了解有关如何在租户中配置 Smart Lockout 设置以保护用户帐户的详细信息。

后续步骤