从缓存中移除代理用户

Last published : Oct 24, 2026
有些情况下,管理员无法从缓存中移除代理用户,或者有时在运行 Get-BrokerUser 时,用户显示了来自 AD 的不正确 SID。
当用户从 AD 中删除并重新创建,但代理缓存仍保留以前的用户 SID 时,就会发生这种情况。
要解决此问题,请执行以下操作:
  1. 从 Active Directory 中移除用户。
  2. 对每个已移除的帐户运行 Get-BrokerUser。未在任何地方引用的帐户不会返回任何结果。对于已引用的用户,在运行 Get-BrokerUser 后会获得一个值。现在,您必须找出用户被分配到哪些资源,并手动从这些资源中移除用户。
    例如:
    • 查找用户是否被分配到应用程序:Get-BrokerApplication
    • 查找用户是否被分配到应用程序组:Get-BrokerApplicationGroup
    • 查找用户是否被分配到访问策略:Get-BrokerAccessPolicyRule
    • 查找用户是否被分配到应用程序授权策略:Get-BrokerAppEntitlementPolicyRule
    • 查找用户是否被分配到桌面授权策略:Get-BrokerEntitlementPolicyRule
    • 查找用户是否被分配到桌面组会话延迟:Get-BrokerSessionLinger
    • 查找用户是否在 VDA 上运行任何会话:Get-BrokerSession
    • 查找用户是否被分配到合并组中的资源:Get-BrokerMergedResource
    • 查找用户是否已分配到资源组: Get-BrokerMergeGroup
    • 查找是否有命令排队等待用户: Get-BrokerMachineCommand
    • 查找用户是否已分配到专用桌面: Get-BrokerMachineV2
    • 查找用户是否已分配到区域首选项: Get-BrokerUserZonePreference
  3. 手动将用户从资源中移除。
  4. 运行 Get-BrokerUser 命令以确认用户已从所有资源中移除。
  5. 用户从所有资源中移除后,运行以下命令以将用户从缓存中移除。
    Update-BrokerNameCache -Users -Purge -UnusedFor 0