Partager via

在 Microsoft Entra ID 中为 Microsoft 365 组强制执行命名策略

要为用户创建或编辑的 Microsoft 365 组强制执行一致的命名约定,请在 Microsoft Entra ID 中为组织设置组命名策略。 例如,可以使用命名策略传达组的功能、成员身份、地理区域或创建组的人员。 使用命名策略还可帮助对通讯簿中的组分类。 可以使用策略来阻止组名称和别名中使用特定字词。

重要

要将 Microsoft Entra ID 命名策略用于 Microsoft 365 组,你需要拥有 Microsoft Entra ID P1 许可证或 Microsoft Entra Basic EDU 许可证,但不一定要为每名唯一用户(一个或多个 Microsoft 365 组的成员)都分配该许可证。

命名策略会应用到创建组或编辑跨工作负载(例如 Outlook、Microsoft Teams、SharePoint、Exchange 或 Planner)创建的组,即使未作出任何编辑更改。 它同时适用于群组名称和群组别名。 如果在 Microsoft Entra ID 中设置了命名策略,并且有现成的 Exchange 组命名策略,组织中会强制执行 Microsoft Entra ID 命名策略。

如果配置了组命名策略,该策略将应用到用户创建的新 Microsoft 365 组。 命名策略不会应用到某些目录角色,例如全局管理员或用户管理员。 (有关免于执行组命名策略的角色的完整列表,请参阅“角色和权限”部分。)对于现有的 Microsoft 365 组,策略在配置时不会立即应用。 组所有者完成这些组的组名称编辑后,即使未作出任何更改,命名策略也会强制执行。

命名策略功能

可通过两种不同方式对组强制执行命名策略:

  • 前缀-后缀命名策略:可以定义前缀或后缀,然后系统会自动添加这些前缀或后缀,以对组强制执行命名约定。 例如,在组名 GRP_CHINA_My Group_Engineering 中,前缀为 GRP_CHINA_,后缀为 _Engineering
  • 自定义阻止字词:可上传一组特定于组织的阻止字词,将在用户创建的组中阻止这些字词。 例如,可以使用 Payroll,CEO,HR

前后缀命名策略

命名约定的一般结构是 Prefix[GroupName]Suffix。 虽然可以定义多个前缀和后缀,但设置中仅可包含一个 [GroupName] 实例。 前缀或后缀可以是固定字符串,也可以是根据创建组的用户替换的用户属性(例如 [Department])。 包括组名称在内的前缀和后缀字符串允许的总字符数为 63 个字符。

前缀和后缀可包含组名和组别名中支持的特殊字符。 如果前缀或后缀中有任何组别名不支持的字符,这些字符仍可应用于组名,但会从组别名中移除。 由于存在此限制,应用于组名的前缀和后缀与应用于组别名的前缀和后缀可能有所不同。

固定字符串

使用字符串,可更轻松地扫描和区分全局地址列表和左侧组工作负荷导航链接中的组。 一些常见的前缀是 Grp_Name#Name_Name 等关键字。

用户属性

你可以使用属性来帮助自己和用户识别组是为哪个部门、办公室或地理区域创建的。 例如,假设将命名策略定义为 PrefixSuffixNamingRequirement = "GRP [GroupName] [Department]"User's department = Engineering,则强制实施的组名可以是 "GRP My Group Engineering."。支持的 Microsoft Entra 属性为 \[Department\]\[Company\]\[Office\]\[StateOrProvince\]\[CountryOrRegion\]\[Title\]。 不受支持的用户属性会被视为固定字符串。 示例为 "\[postalCode\]"。 不支持扩展属性和自定义属性。

使用为组织中所有用户都填充值的属性,并且不使用具有较长值的属性。

自定义屏蔽词语

禁止字词列表是一个用逗号分隔的短语列表,用来禁止在组名称和别名中使用。 未执行任何子字符串搜索。 组名只有与一个或多个自定义阻止字词完全匹配,才能触发系统失败。 不会执行子字符串搜索,以便用户能够使用“Class”这样的常用词,即便其中的“lass”是被屏蔽的词。

被阻止的单词列表规则:

  • 阻止的字词不区分大小写。
  • 当用户在组名中输入阻止的字词时,会看到错误消息以及阻止的字词。
  • 对于阻止的字词,没有字符限制。
  • 在阻止字词列表中最多可配置 5000 个短语。

角色和权限

要配置命名策略,需要以下角色之一:

  • 全局管理员
  • 组管理员
  • 目录写入器

某些管理员角色在所有组工作负载和端点中不受这些策略的约束,因此他们可以使用禁止使用的字词和自己的命名约定来创建组。 以下管理员角色不受组命名策略的约束:

  • 全局管理员
  • 用户管理员

配置命名策略

  1. 至少以组管理员身份登录到 Microsoft Entra 管理中心

  2. 选择“Microsoft Entra ID”。

  3. 选择“所有组”>“组”,然后选择“命名策略”以打开“命名策略”页面。

    显示在管理中心打开“命名策略”页的屏幕截图。

查看或编辑前后缀命名策略

  1. 在“命名策略”页上,选择“组命名策略”。
  2. 可以单独查看或编辑当前的前缀或后缀命名策略,只需选择需要在命名策略中强制实施的属性或字符串即可。
  3. 要从列表中移除某个前缀或后缀,请选择该前缀或后缀,然后选择“删除”。 可以同时删除多个项。
  4. 通过选择“保存”,保存对新策略的更改以使其生效。

编辑自定义阻止词语

  1. 在“命名策略”页上,选择“禁用词”。

    显示编辑和上传命名策略的阻止字词列表的屏幕截图。

  2. 查看或编辑自定义阻止字词的当前列表,方法是选择“下载”。 必须将新条目添加到现有条目中。

  3. 选择“文件”图标,可以上传新的自定义阻止字词列表。

  4. 通过选择“保存”,保存对新策略的更改以使其生效。

安装 PowerShell cmdlet

按照安装 Microsoft Graph PowerShell SDK 中所述安装 Microsoft Graph cmdlet。

注意

我们计划在 2024 年 3 月 30 日弃用 Azure AD PowerShell。 若要了解详细信息,请阅读弃用更新

我们建议迁移到 Microsoft Graph PowerShell,以便与 Microsoft Entra ID(以前称为 Azure AD)进行交互。 Microsoft Graph PowerShell 在 PowerShell 7 上提供,支持访问所有 Microsoft Graph API。 有关常见迁移查询的解答,请参阅迁移常见问题解答

  1. 以管理员身份打开 Windows PowerShell 应用。

  2. 安装 Microsoft Graph 命令工具。

    Install-Module Microsoft.Graph -Scope AllUsers
    
  3. 安装 Microsoft Graph beta cmdlet。

    Install-Module Microsoft.Graph.Beta -Scope AllUsers
    

在 PowerShell 中配置命名策略

  1. 在计算机上打开 Windows PowerShell 窗口。 无需提升的权限即可打开该窗口。

  2. 运行以下命令以准备运行 cmdlet。

    Connect-MgGraph -Environment China -ClientId 'YOUR_CLIENT_ID' -TenantId 'YOUR_TENANT_ID' -Scopes "Directory.ReadWrite.All"
    

    在打开的“登录到你的帐户”屏幕上,输入你的管理员帐户和密码以连接到服务

  3. 按照用于配置组设置的 Microsoft Entra cmdlet 中的步骤为此组织创建组设置。

查看当前设置

  1. 提取当前命名策略,查看当前设置。

    $Setting = Get-MgBetaDirectorySetting -DirectorySettingId (Get-MgBetaDirectorySetting | where -Property DisplayName -Value "Group.Unified" -EQ).id
    
  2. 显示当前组设置。

    $Setting.Values
    

设置命名策略和自定义屏蔽词

  1. 获取设置。

    $Setting = Get-MgBetaDirectorySetting -DirectorySettingId (Get-MgBetaDirectorySetting | where -Property DisplayName -Value "Group.Unified" -EQ).id
    
  2. 设置组名称前缀和后缀。 要使功能正常工作,必须在设置中包含 [GroupName]。 另外,设置要限制的自定义阻止字词。

    $params = @{
       values = @(
          @{
             name = "PrefixSuffixNamingRequirement"
             value = "GRP_[GroupName]_[Department]"
          }
          @{
             name = "CustomBlockedWordsList"
             value = "Payroll,CEO,HR"
          }
       )
    }
    
  3. 更新新策略的设置以使其生效,如下例所示。

    Update-MgBetaDirectorySetting -DirectorySettingId $Setting.Id -BodyParameter $params
    

这就可以了。 你设置了命名政策,并添加了禁止使用词。

导出或导入自定义阻止字词

有关详细信息,请参阅 用于配置组设置的 Microsoft Entra cmdlet

下面的 PowerShell 脚本示例可导出多个阻止字词。

$Words = (Get-MgBetaDirectorySetting).Values | where -Property Name -Value CustomBlockedWordsList -EQ 
Add-Content "c:\work\currentblockedwordslist.txt" -Value $Words.value.Split(",").Replace("`"","")

下面的 PowerShell 脚本示例可导入多个阻止字词。

$BadWords = Get-Content "C:\work\currentblockedwordslist.txt"
$BadWords = [string]::join(",", $BadWords)
$Setting = Get-MgBetaDirectorySetting | where {$_.DisplayName -eq "Group.Unified"}
if ($Setting.Count -eq 0) {
   $Template = Get-MgBetaDirectorySettingTemplate | where {$_.DisplayName -eq "Group.Unified"}
   $Params = @{ templateId = $Template.Id }
   $Setting = New-MgBetaDirectorySetting -BodyParameter $Params 
   }
$params = @{
   values = @(
      @{
         name = "PrefixSuffixNamingRequirement"
         value = "GRP_[GroupName]_[Department]"
      }
      @{
         name = "CustomBlockedWordsList"
         value = "$BadWords"
      }
   )
}
Update-MgBetaDirectorySetting -DirectorySettingId $Setting.Id -BodyParameter $params

删除命名策略

可以使用 Azure 门户或 Microsoft Graph PowerShell 移除命名策略。

使用 Azure 门户移除命名策略

  1. 在“命名策略”页上,选择“删除策略”。
  2. 确认删除之后,将会移除命名策略,包括所有前缀-后缀命名策略和任何自定义阻止字词。

使用 Microsoft Graph PowerShell 移除命名策略

  1. 获取设置。

    $Setting = Get-MgBetaDirectorySetting -DirectorySettingId (Get-MgBetaDirectorySetting | where -Property DisplayName -Value "Group.Unified" -EQ).id
    
  2. 清空组名称前缀和后缀。 清空自定义阻止字词。

    $params = @{
       values = @(
          @{
             name = "PrefixSuffixNamingRequirement"
             value = ""
          }
          @{
             name = "CustomBlockedWordsList"
             value = ""
          }
       )
    }
    
  3. 更新设置。

    Update-MgBetaDirectorySetting -DirectorySettingId $Setting.Id -BodyParameter $params
    

跨 Microsoft 365 应用的体验

在 Microsoft Entra ID 中设置组命名策略后,用户在 Microsoft 365 应用中创建组时会看到:

  • 在用户输入组名后立即看到随命名策略而定的名称预览(包括前缀和后缀)。
  • 如果用户输入阻止字词,将会看到一条错误消息,从而可移除阻止字词。
工作负载 合规性
Azure 门户 如果用户在创建或编辑组时输入组名,则 Azure 门户和访问面板门户会显示命名策略强制使用的名称。 当用户输入自定义阻止字词时,将会显示一条错误消息以及阻止字词,以便用户可以将其移除。
Outlook Web Access (OWA) 当用户输入组名或组别名时,Outlook Web Access 会显示命名策略强制使用的名称。 当用户输入自定义阻止字词时,UI 中将会显示一条错误消息以及阻止字词,以便用户可以将其移除。
Outlook 桌面 在 Outlook 桌面中创建的组遵循命名策略设置。 用户输入组名时,Outlook 桌面应用当前不会显示强制使用的组名的预览,也不会返回自定义阻止字词错误。 但是,当用户创建或编辑组时,会自动应用命名策略。 如果组名或别名中有自定义阻止字词,则用户会看到错误消息。
Microsoft Teams 用户输入团队名时,Microsoft Teams 会显示组命名策略强制使用的名称。 当用户输入自定义阻止字词时,将会显示一条错误消息以及阻止字词,以便用户可以将其移除。
SharePoint 当用户输入站点名或组电子邮件地址时,SharePoint 会显示命名策略强制使用的名称。 当用户输入自定义阻止字词时,将会显示一条错误消息以及阻止字词,以便用户可以将其移除。
Microsoft Stream 当用户输入组名或组电子邮件别名时,Microsoft Stream 会显示组命名策略强制使用的名称。 当用户输入自定义阻止字词时,将会显示一条错误消息以及阻止字词,以便用户可以将其移除。
Outlook iOS 和 Android 应用 在 Outlook 应用中创建的组遵循配置的命名策略。 Outlook 移动应用尚不能显示命名策略强制使用的名称的预览。 当用户输入组名称时,应用不会返回自定义屏蔽词错误。 但是,当用户选择“创建”或“编辑”时,则会自动应用命名策略。 如果组名或别名中有自定义阻止字词,则用户会看到错误消息。
群组移动应用 在Groups移动应用程序中创建的组遵循命名策略。 当用户输入组名时,组的移动应用程序不会显示命名策略的预览,也不会返回自定义屏蔽词错误。 但在用户创建或编辑组时,则会自动应用命名策略。 如果组名或别名中有自定义阻止字词,用户将会看到相应的错误。
计划者 Planner 遵循命名策略。 当用户输入计划名称时,Planner 会显示命名策略预览。 当用户创建计划时,如果用户输入了自定义阻止字词,则会显示一条错误消息。
Project 网页版 Project for the web 符合命名策略。
Dynamics 365 for Customer Engagement Dynamics 365 for Customer Engagement 遵循命名策略。 当用户输入组名或组电子邮件别名时,Dynamics 365 会显示命名策略强制使用的名称。 当用户输入自定义阻止字词时,将会显示一条错误消息以及阻止字词,以便用户可以将其移除。
学校数据同步 (SDS) 通过 SDS 创建的组遵循命名策略,但不会自动应用命名策略。 SDS 管理员必须将前缀和后缀追加到需要创建组的类名,然后上传到 SDS。 否则,创建或编辑组将会失败。
Classroom 应用 在 Classroom 应用中创建的组遵循命名策略,但不会自动应用命名策略。 当用户输入教室组名时,不会向用户显示命名策略预览。 用户必须输入强制使用的教室组名称(包含前缀和后缀)。 如果不这样,课堂小组的创建或编辑操作将失败并产生错误。
Power BI Power BI 工作区遵循命名策略。
Yammer 当用户使用其 Microsoft Entra 帐户登录到 Yammer 以创建组或编辑组名时,组名将遵循命名策略。 此功能适用于连接到 Microsoft 365 的组以及所有其他 Yammer 组。
如果连接到 Microsoft 365 的组是在命名策略到位之前创建的,则组名将不会自动遵循命名策略。 当用户编辑组名时,系统将提示用户添加前缀和后缀。
StaffHub StaffHub 团队不遵循命名策略,但基础 Microsoft 365 组会遵循。 StaffHub 团队名不会应用前缀和后缀,也不会检查自定义阻止字词。 但 StaffHub 确实会在基础的 Microsoft 365 组中应用前缀和后缀,并删除被禁止的字词。
Exchange PowerShell Exchange PowerShell cmdlet 遵循命名策略。 如果用户在组名和组别名 (mailNickname) 中不遵循命名策略,那么会收到包括建议的前缀和后缀以及自定义阻止词在内的相应错误消息。
Microsoft Graph PowerShell cmdlet Microsoft PowerShell cmdlet 符合命名策略。 如果用户不遵循组名和组别名的命名规则,则会收到错误消息,其中包含建议的前缀和后缀以及自定义阻止的词语。
Exchange 管理中心 Exchange 管理中心遵循命名策略。 如果用户不遵循组名和组别名的命名约定,则会收到相应的错误消息,以及建议的前后缀和自定义阻止字词。
Microsoft 365 管理中心 Microsoft 365 管理中心遵循命名策略。 当用户创建或编辑组名时,会自动应用命名策略。 当用户输入自定义阻止字词时,将会收到相应的错误。 当用户输入组名时,Microsoft 365 管理中心并不会显示命名策略预览,也不会返回自定义阻止字词错误。

后续步骤

有关 Microsoft Entra 组的更多信息,请参阅: