对 Microsoft Entra ID 管理员而言,8 月注定是一个关键月份。在即将到来的 9 月 1 日通行密钥(passkey)默认启用,以及源源不断的新公告之间,需要跟踪的内容很多。今天的更新带来三项重要进展:一项将迫使许多组织重新思考其组架构的动态组破坏性变更、一个帮助管理通行密钥迁移的 AI 工具,以及关于超越传统 VPN 的新思想领袖文章。

1. memberOf 规则运算符停用——动态组的破坏性变更(MC1448379)

今天通过消息中心通知 MC1448379 发布,微软宣布将于 2026 年 11 月 3 日结束 Entra ID 中 memberOf 规则运算符的公共预览。该运算符自 2022 年前后开始预览,允许管理员创建从现有组中拉取成员、而非依赖用户或设备属性的动态成员资格规则。它不会被提升为正式发布(General Availability)。

影响范围

此次停用影响三个方面:

  • 使用 memberOf 规则的动态成员资格组(Dynamic membership groups)
  • 使用 memberOf 规则的动态管理单元(Dynamic administrative units)
  • 使用 memberOf 规则的权利管理自动分配策略(Entitlement management auto-assignment policies)

关键日期

日期发生事项
2026年10月27日使用 memberOf 的权利管理自动分配策略被隔离——处理停止,但策略保留
2026年11月3日使用 memberOf 的动态组和管理单元停止更新——成员资格冻结在最后已知状态

没有退出(opt-out)选项,也没有延期(extension)可用。

微软为何停用该功能

这一决定归结为扩展性与可靠性。微软发现,即使租户中只有一条 memberOf 规则,也可能导致租户范围内所有动态组的处理延迟——不仅仅是使用该运算符的那一个组。这种性能影响是根本性的,微软认为该功能无法在规模化下得到支持;与其继续让组织依赖一个具有这些限制的预览功能,不如将其停用。

不采取行动的后果

如果您未在截止日期前完成迁移,后果将很严重:

  • 过时的访问权限: 新用户无法获得所需的访问权限,而前成员仍保留对 Teams、SharePoint 及其他资源的访问权
  • Conditional Access 失效: 评估组成员资格的策略将基于过时数据工作
  • 许可漂移: 基于组的许可将无法正确分配或移除许可证——用户可能保留不应有的许可证,或缺少所需的许可证
  • 过时的管理范围: 动态管理单元(AU)将拥有过时的成员资格,影响委托管理范围
  • 权利管理冻结: 自动分配策略将不再添加或移除访问包分配

如何识别受影响的配置

首先使用 Microsoft Graph PowerShell 模块运行以下 PowerShell 命令:

# Find dynamic groups using memberOf
Get-MgGroup -Filter "startsWith(membershipRule,'user.memberOf') or startsWith(membershipRule,'device.memberOf')" | Select-Object DisplayName, Id, MembershipRule, MembershipRuleProcessingState

# Find dynamic AUs using memberOf
Get-MgDirectoryAdministrativeUnit -All -Property Id, DisplayName, MembershipRule, MembershipType | Where-Object { $_.MembershipType -eq "Dynamic" -and $_.MembershipRule -match "memberOf" } | Select-Object DisplayName, Id, MembershipRule

对于权利管理自动分配策略,请使用 Graph PowerShell 查询在分配规则中引用 memberOf 的访问包策略。

社区也积极行动——AdminDroid 发布了一个全面的 PowerShell 脚本,可扫描全部三种配置类型并生成 CSV 报告:Find Entra ID Configurations with Deprecated MemberOf Operator

迁移选项

微软的官方指导提供两条主要路径,但还有第三个实用选项:

选项 1:改用基于属性的动态规则。 如果相同的成员资格可以使用用户或设备属性(department、extensionAttribute、jobTitle 等)来表达,则重写规则。例如,如果您的 memberOf 组拉取了本身按部门定义的 “Sales” 和 “Marketing” 组的成员,您可以创建类似 user.department -in ['Sales','Marketing'] 的规则。

选项 2:转换为已分配成员资格。 在 Entra 管理中心将组的成员资格类型从 Dynamic(动态)改为 Assigned(已分配)(组 > 所有组 > 打开组 > 更改成员资格类型)。通过手动方式或自动化管理成员资格。最适合小规模或不经常变化的组。

选项 3:PowerShell 同步脚本。 构建一个计划任务脚本,读取源组的成员资格并同步到目标组。这是最灵活的选项,能最大程度模拟 memberOf 的行为,但会增加运维负担,脚本本身也会成为一个维护点。

切换前的验证

无论选择哪种替代方案,在部署到生产环境之前都要进行验证。导出旧 memberOf 组的成员,构建替代组,等待处理完成,导出新组的成员,然后进行比较:

# Export members of the old memberOf group
$oldGroupId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
Get-MgGroupMember -GroupId $oldGroupId -All | Select-Object @{N='Id';E={$_.Id}} | Export-Csv -Path .\OldGroup-Members.csv -NoTypeInformation

# Export members of the new replacement group
$newGroupId = "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy"
Get-MgGroupMember -GroupId $newGroupId -All | Select-Object @{N='Id';E={$_.Id}} | Export-Csv -Path .\NewGroup-Members.csv -NoTypeInformation

# Compare
$old = Import-Csv .\OldGroup-Members.csv
$new = Import-Csv .\NewGroup-Members.csv
$diff = Compare-Object -ReferenceObject $old.Id -DifferenceObject $new.Id
if ($diff) { Write-Host "Differences found:" -ForegroundColor Yellow; $diff | Format-Table -AutoSize }
else { Write-Host "Membership matches. Safe to switch." -ForegroundColor Green }

社区反应

该公告在 IAM 社区引起了相当大的反对。在 Reddit 的 r/sysadmin、Spiceworks 和 LinkedIn 上,管理员们对一项预览了四年的功能在没有直接替代品的情况下被移除表示不满。许多组织在其漫长的预览期内围绕 memberOf 构建了许可、Conditional Access 和应用访问架构。嵌套组逻辑缺乏 1:1 的替代方案,意味着受影响的租户需要付出大量的返工。

这是一个合理的担忧。虽然微软的性能理由站得住脚——单条规则导致的租户级处理降级确实是一个真实问题——但漫长的预览期造成了虚假的"永久性"错觉。诚心采用 memberOf 的组织如今面临紧张的时间表来重构其组架构。

2. 借助 Conditional Access Optimization Agent 的通行密钥推广活动(公共预览)

在时机更好的新闻方面,微软推出了一款强大的新工具,帮助组织管理即将到来的通行密钥迁移。基于 Security Copilot 构建的 Conditional Access Optimization Agent 现在支持公共预览版中的通行密钥推广活动(passkey adoption campaigns)

功能简介

该代理提供了一种由 AI 驱动、结构化的方法来推广防钓鱼身份验证:

  1. 评估用户和设备就绪状态 — 识别哪些用户拥有兼容设备、哪些需要设备更新、哪些已注册通行密钥
  2. 生成部署计划 — 包括预计活动时长、目标用户数量以及用户就绪状态类别的细分
  3. 引导用户完成各步骤 — 发送 Microsoft Teams 通知,提示用户更新设备、注册通行密钥或为强制执行做好准备
  4. 强制执行 Conditional Access 策略 — 首先以仅报告模式(report-only)自动创建 CA 策略,待用户就绪后再强制执行防钓鱼身份验证要求

该代理每 24 小时自动运行一次,以评估进展,并在满足前提条件时将用户推进到活动的后续阶段。

为什么现在很重要

随着通行密钥从 2026 年 9 月 1 日起成为 Entra ID 的默认身份验证方法,以及微软提供的短信/语音身份验证将于 2027 年 2 月 1 日停用,组织需要结构化的工具来规模化地管理这次迁移。通行密钥推广活动代理正好满足了这一需求。

默认从特权管理员用户开始是正确的安全优先做法——这些是攻击者眼中价值最高的目标账户,也是防钓鱼身份验证能带来最直接风险降低的账户。

要求与限制

要求:

  • 最低需要 Microsoft Entra ID P1 许可证
  • 可用的安全计算单元(Security Compute Units, SCU)——每次代理运行平均消耗不到 1 个 SCU
  • 必须在身份验证方法策略(Authentication Methods Policy)中启用通行密钥
  • 需要安全管理员(Security Administrator)角色(仅 Conditional Access Administrator 不够)

需要注意的限制:

  • 活动设置(目标人群、宽限期、延期)在活动开始后无法修改——启动前务必充分规划
  • 代理不会验证目标用户是否已在身份验证方法策略中启用通行密钥——您必须事先配置好这一前提条件
  • 目前仅支持为拥有 Security Copilot Owner 或 Security Copilot Contributor 角色的用户延期
  • 非活动设备会被自动过滤(例如 8 个月未使用的笔记本电脑)
  • 应明确排除应急账户(break-glass accounts)

如何启用

  1. 至少以安全管理员身份登录 Microsoft Entra 管理中心
  2. 导航到 Conditional Access Optimization Agent > Settings(设置)
  3. Agent capabilities(代理功能) 下,选择 Allow agent to create passkey adoption campaigns(允许代理创建通行密钥推广活动)
  4. 代理开始分析您的租户,以识别符合通行密钥活动条件的用户

有关详细文档,请参阅 Deploy passkey adoption campaigns with the Conditional Access Optimization Agent (Preview)

3. 以身份为先的访问消除 VPN 缺口——新的思想领袖文章

8 月 5 日,微软发布了 Janice Ricketts 撰写的新博文《End VPN gaps with identity-first access》(以身份为先的访问消除 VPN 缺口)。虽然不是产品公告,但对于任何规划 VPN 现代化计划的人来说都值得一读。

核心论点

传统 VPN 扩展了网络访问,但不会持续评估身份、设备状态、位置、用户风险或会话上下文。这使得 AI 应用、SaaS、本地应用、非托管服务和互联网流量得不到均衡的保护。零信任通过将身份和策略置于每次访问决策的核心来弥合这一缺口。

该文将 Conditional Access 定位为策略引擎,将 Global Secure Access(由 Entra Internet Access 和 Entra Private Access 组成)定位为执行层,将身份驱动的控制扩展到所有资源类型。

要点

  • 在所有地方应用零信任原则——不仅仅是 Microsoft 365 和核心 SaaS 应用
  • 在 AI 应用、本地应用、SaaS 和互联网流量中使用相同的身份驱动模型
  • 将基于风险的 Conditional Access 扩展到云应用之外,保护所有资源
  • 通过淘汰以 VPN 为主的重型架构、改用基于策略的访问,降低复杂性和成本
  • 目标是在所有资源类型上建立一套可复用的安全模型,而不是为每种资源分别建立策略模型

实用价值

对于需要向管理层论证 VPN 替代计划的组织,这篇文章提供了一个简洁的业务论证框架:通过自动化策略驱动的响应降低违规风险,通过降低 VPN 复杂性加快运营,改善用户体验,并通过减少本地硬件和重叠的安全工具提高成本效益。

这对您的组织意味着什么

立即行动(本周)

  1. 审计 memberOf 使用情况 — 运行上述 PowerShell 命令,识别所有受影响的动态组、管理单元和权利管理策略。权利管理策略的 10 月 27 日截止日期已不到 12 周。

  2. 盘点您的短信/语音 MFA 用户 — 使用 entra-sms-voice-usage-analyzer PowerShell 脚本,在 9 月 1 日自动启用之前识别仍在使用短信/语音的用户。

  3. 评估 CA Optimization Agent — 如果您拥有 Security Copilot 许可,请探索通行密钥推广活动功能,为特权用户自动执行通行密钥迁移。

短期规划(未来 30 天)

  1. 制定 memberOf 迁移计划 — 针对每个受影响的配置,记录其用途(许可、Conditional Access、Teams 访问、应用分配),选择替代策略,并按复杂度和影响排序。

  2. 测试通行密钥注册 — 验证您的通行密钥配置文件、身份验证方法策略和设备兼容性已为 9 月 1 日的推出做好准备。

  3. 审查 VPN 替代路线图 — 如果您仍依赖传统 VPN 访问本地或云资源,请使用 Global Secure Access 框架评估零信任现代化计划。

关键日期汇总

日期事件
2026年8月1日短信/语音迁移临时退出(opt-out)API 可用(Graph Beta)
2026年9月1日通行密钥成为默认方式;短信/语音用户自动启用通行密钥
2026年10月27日权利管理 memberOf 策略被隔离
2026年11月3日动态组和管理单元的 memberOf 规则停止处理
2027年2月1日微软提供的短信/语音身份验证停用

保持关注

Entra ID 领域正在快速发展。在通行密钥迁移、memberOf 停用以及向 AI 驱动的身份管理整体转型之间,IT 团队需要保持主动。我们将继续跟踪这些变化,并在新公告发布时提供可操作的指导。

在 X 上关注 https://x.com/kkaminsk,获取实时更新与分析。


Big Hat Group Inc. 是一家微软合作伙伴,拥有 20 多年的经验,帮助组织驾驭身份与安全转型。联系我们,讨论这些变化如何影响您的环境,以及我们如何帮助您规划迁移。