配置动态成员身份

已完成

Microsoft Teams 通过使用动态成员资格支持与 Microsoft 365 组关联的团队。

可以使用动态成员身份通过一个或多个规则来定义团队成员,这些规则检查 Microsoft Entra ID 中的某些用户属性。 当用户属性发生变化或用户加入和离开租户时,系统会自动移除用户或将其添加到指定团队。 可能的应用场景包括:

  • 医院可以为护士、医生和外科医生创建不同的团队来广播通信。 如果医院依赖临时员工,此功能尤其重要。
  • 一个大学可以为大学内的所有教职员工(包括经常变动的临时教职员工)创建团队。
  • 一家航空公司希望为经常变动的机组人员创建一个团队,其中的机组人员会根据需要自动分配或删除。

借助此功能,给定团队的成员将基于一组特定条件自动更新,而不是手动管理成员资格。

注意

使用动态组需要范围内任何用户的 Microsoft Entra ID P1 许可证。

动态成员资格更改在团队的 Microsoft 365 组中生效后,可能需要几分钟到 2 个小时才能反映出来。 对于团队中的动态组成员资格,必须考虑以下事项:

  • 规则可定义团队的团队成员,但不能定义团队所有者。
  • 所有者无法添加用户作为团队成员,也无法将其删除,因为成员由动态组规则定义。
  • 成员无法离开由动态组支持的团队。

启用动态成员资格

若要在团队中启用动态成员身份,必须使用 Microsoft Entra 管理中心PowerShell 修改基础 Microsoft 365 组成员身份规则。 如果修改成员资格,将不会更改对组的引用。 如果该组用于访问,由动态成员资格规则添加的每个成员都可以访问该组的资源。

目前无法直接创建具有动态成员资格的团队。 可以创建一个团队,然后更改关联的 Microsoft 365 组的成员资格规则,也可以创建具有动态用户成员资格类型的 Microsoft 365 组,然后从现有 Microsoft 365 组创建团队。

警告

将现有静态组更改为动态组时,将从该组中删除所有现有成员,然后处理成员资格规则以添加新成员。 如果该组用于控制对应用或资源的访问权限,请注意,在完全处理成员资格规则之前,原始成员可能会失去访问权限。 应事先测试新的成员资格规则,以确保该组中成员资格符合预期。

使用 Microsoft Entra 管理中心

执行以下步骤,将现有团队的组成员资格更改为基于规则的动态成员资格。

  1. 使用 Microsoft Entra 组织中的全局管理员、用户管理员或组管理员帐户登录到 Microsoft Entra 管理中心。

  2. 在左窗格菜单中,选择“”。

  3. 从“所有组”列表中,打开要更改的组。

  4. 选择“属性”。 在所选组的“属性”页上,选择“动态用户的成员资格类型”。

    Microsoft Entra ID 中成员身份类型的屏幕截图。

  5. 选择“添加动态查询”,然后提供规则。

    在 Microsoft Entra ID 中添加动态查询的屏幕截图。

  6. 创建规则后,单击“保存”返回到“属性”页。

  7. 在该组的“属性”页上,选择“保存”以保存更改。 该组的成员资格类型将立即在组列表中更新。

使用 Microsoft Graph PowerShell

若要更改组的成员身份类型,请使用 Microsoft Graph PowerShell。

注意: Azure AD 和 MSOnline PowerShell 模块已计划弃用,并且已更改 PowerShell 命令以反映 Microsoft Graph PowerShell。

使用以下命令将组切换为动态成员资格:

Set-MgGroup -Id $groupId -GroupTypes $groupTypes.ToArray() -MembershipRuleProcessingState "On" -MembershipRule $dynamicMembershipRule

若要创建 $groupTypes 变量,必须获取现有组的组类型,并向其添加字符串“dynamicMembership”。

$groupTypes = (Get-MgGroup -Id $groupId).GroupTypes
$groupTypes.Add("DynamicMembership")

创建动态成员资格规则

可以从一个或多个表达式生成规则。 单个表达式的格式为属性+运算符+值。 例如:user.department -eq "Sales"。 如果要向单个规则添加多个表达式,可以使用相同的运算符将它们组合在一起,并将每个表达式放在其圆括号中:

(user.department -eq "Sales") -and (user.department -eq "Marketing")

有三种类型的属性可用于构造成员资格规则。

  • Boolean

  • String

  • 字符串集合

支持的运算符包括:

运算符 语法
不等于 -ne
等于 -eq
开头不为 -notStartsWith
起始为 startsWith
不包含 -notContains
Contains -contains
不匹配 -notMatch
匹配 -match
位置 -in
不含于 -notIn

表达式中使用的值可能由多种类型组成,其中包括:

  • 字符串

  • 布尔值 – true、false

  • 数字

  • 数组 – 数字数组、字符串数组

在表达式中指定值时,必须使用正确的语法以避免错误。 一些语法提示包括:

  • 除非值为字符串,否则双引号是可选的。

  • 字符串和正则表达式操作不区分大小写。

  • 当字符串值包含双引号时,应使用字符 (“) (例如, user.department -eq "Sales" 当”Sales“为值时)对两个引号进行转义。

  • 你还可以执行 Null 检查,将 null 用作值,例如,user.department -eq null

有关详细信息,请参阅 Microsoft Entra ID 中组的动态成员身份规则