Microsoft Entra 密码保护可检测并阻止已知的弱密码及其变体,还可以阻止特定于组织的其他弱术语。 Microsoft Entra 密码保护的本地部署使用相同的全局和自定义禁止密码列表,这些列表存储在 Microsoft Entra ID 中,并且对本地密码更改执行相同的检查,就像 Microsoft Entra ID 针对基于云的更改所做的那样。 将在密码更改和密码重置事件期间,针对本地 Active Directory 域服务 (AD DS) 域控制器执行这些检查。
设计原则
Microsoft Entra 密码保护是遵循以下原则设计的:
- 域控制器 (DC) 不必直接与 Internet 通信。
- DC 上未打开新的网络端口。
- 不需要 AD DS 架构更改。 该软件使用现有的 AD DS 容器 和服务 ConnectionPoint 架构对象。
- 可以使用任何受支持的 AD DS 域或林功能级别。
- 该软件不会在它保护的 AD DS 域中创建或要求帐户。
- 在密码验证作或任何其他时间,用户明文密码永远不会离开域控制器。
- 该软件不依赖于 Microsoft Entra 的其他功能。 例如,Microsoft Entra 密码哈希同步(PHS)与 Microsoft Entra 密码保护无关或必需。
- 支持增量部署,但仅在安装了域控制器代理(DC 代理)的情况下才会强制执行密码策略。
增量部署
Microsoft Entra Password Protection 支持在 AD DS 域中跨 DC 进行增量部署。 了解这真正意味着什么以及利弊很重要。
Microsoft Entra Password Protection DC 代理软件只能在安装在 DC 上时进行密码验证,并且仅适用于发送到该 DC 的密码更改。 无法控制 Windows 客户端计算机选择哪些 DC 来处理用户密码更改。 若要保证一致的行为和通用Microsoft Entra Password Protection 安全强制实施,必须在域中的所有 DC 上安装 DC 代理软件。
许多组织希望在完整部署之前仔细测试微软 Entra 密码保护在其部分 DC 上的应用。 若要支持此方案,Microsoft Entra Password Protection 支持部分部署。 即使域中的其他 DC 未安装 DC 代理软件,给定 DC 上的 DC 代理软件也会主动验证密码。 出于测试目的外,此类型的部分部署不安全,且不建议使用。
体系结构图
在本地 AD DS 环境中部署 Microsoft Entra Password Protection 之前,请务必了解基础设计和函数概念。 下图显示了 Microsoft Entra Password Protection 组件如何协同工作:
- Microsoft Entra Password Protection 代理服务在当前 AD DS 林中的任意一台加入域的计算机上运行。 服务的主要用途是将密码策略下载请求从 DC 转发到 Microsoft Entra ID,然后将来自 Microsoft Entra ID 的响应返回到 DC。
- DC 代理的密码筛选器 DLL 从作系统接收用户密码验证请求。 筛选器将它们转发到在 DC 上本地运行的 DC 代理服务。
- Microsoft Entra Password Protection 的 DC 代理服务从 DC 代理的密码筛选器 DLL 接收密码验证请求。 DC 代理程序服务使用当前(本地可用)的密码策略来处理这些请求,并返回结果为通过或失败。
Microsoft Entra 密码保护的工作原理
本地 Microsoft Entra 密码保护组件的工作方式如下:
每个Microsoft Entra Password Protection 代理服务实例通过在 Active Directory 中创建 serviceConnectionPoint 对象,将自身播发到林中的 DC。
Microsoft Entra 密码保护的每个 DC 代理服务还会在 Active Directory 中创建 serviceConnectionPoint 对象。 此对象主要用于报告和诊断。
DC 代理服务负责从 Microsoft Entra ID 开始下载新的密码策略。 第一步是通过在林中查询代理 serviceConnectionPoint 对象来查找 Microsoft Entra Password Protection 代理服务。
找到可用的代理服务时,DC 代理会向代理服务发送密码策略下载请求。 代理服务又将请求发送到 Microsoft Entra ID,然后将响应返回到 DC 代理服务。
DC 代理服务从 Microsoft Entra ID 收到新的密码策略后,该服务会将策略存储在其域 sysvol 文件夹共享的根目录中的专用文件夹中。 DC 代理服务还会监视此文件夹,以确定是否从域中的其他 DC 代理服务复制了更新的策略。
DC Agent 服务始终在服务启动时请求新的策略设置。 启动 DC 代理服务后,它会每小时检查当前本地可用策略的年龄。 如果策略早于一小时,DC 代理会通过代理服务从 Microsoft Entra ID 请求新策略,如前所述。 如果当前策略的存在时间不超过一小时,DC 代理将继续使用该策略。
当 DC 收到密码更改事件时,缓存策略用于确定是否接受或拒绝新密码。
重要注意事项和功能
- 每当下载Microsoft Entra Password Protection 密码策略时,该策略就特定于租户。 换句话说,密码策略始终是Microsoft全局禁止密码列表和每租户自定义禁止密码列表的组合。
- DC 代理使用 RPC 通过 TCP 与代理服务通信。 代理服务根据配置侦听动态或静态 RPC 端口上的这些调用。
- DC Agent 从不侦听可用的网络端口。
- 代理服务绝不会调用 DC Agent 服务。
- 代理服务是无状态的。 它永远不会缓存从 Azure 下载的策略或任何其他状态。
- 代理注册的工作原理是将凭据添加到 AADPasswordProtectionProxy 服务主体。 发生此情况时,不必对审核日志中的任何事件感到惊慌。
- DC 代理服务始终使用最新的本地可用密码策略来评估用户的密码。 如果本地 DC 上没有可用的密码策略,则会自动接受密码。 发生这种情况时,将记录事件消息以警告管理员。
- Microsoft Entra Password Protection 不是实时策略应用程序引擎。 在 Microsoft Entra ID 中更改密码策略配置后,这一更改可能在传达到并在所有 DC 上强制执行时,会有延迟。
- Microsoft Entra 密码保护充当现有 AD DS 密码策略的补充,而不是替代策略。 这包括可能已安装的任何其他第三方密码筛选器 DLL。 AD DS 始终要求所有密码验证组件在接受密码之前达成一致。
Microsoft Entra 密码保护的林/租户绑定
在 AD DS 林中部署 Microsoft Entra 密码保护需要使用 Microsoft Entra ID 注册该林。 部署的每个代理服务也必须注册Microsoft Entra ID。 这些林和代理注册与特定的 Microsoft Entra 租户相关联,该租户由注册期间使用的凭据隐式标识。
必须在同一租户中注册 AD DS 林和所有已部署的代理服务。 不支持将 AD DS 林或任何代理服务注册到不同Microsoft Entra 租户的林中。 这种配置错误部署的症状包括无法下载密码策略。
注释
因此,具有多个Microsoft Entra 租户的客户必须选择一个可分辨租户,以便为每个林注册Microsoft Entra 密码保护目的。
下载
Microsoft Entra Password Protection 所需的两个代理安装程序可从 Microsoft下载中心获取。
后续步骤
若要开始使用本地 Microsoft Entra 密码保护,请完成以下方法: