在 Exchange Online 中管理角色组
角色组是一种特殊的通用安全组 (USG) ,用于 Exchange Online 中基于角色的 访问控制 (RBAC) 权限模型。 管理角色组简化了在 Exchange Online 中向用户分配和维护权限的过程。 为角色组的成员分配了同一组角色,可以通过将用户添加到角色组或从角色组中删除用户来添加和删除权限。 有关 Exchange Online 中的角色组的详细信息,请参阅 Exchange Online 中的权限。
开始前,有必要了解什么?
估计完成每个步骤的时间:5 到 10 分钟
若要 (EAC) 打开 Exchange 管理中心,请参阅 Exchange Online 中的 Exchange 管理中心。 若要打开 PowerShell Exchange Online,请参阅连接到 powerShell Exchange Online。
本主题中的过程需要 Exchange Online 中的角色管理 RBAC 角色。 通常,可以通过 Microsoft 365 或Office 365 全局管理员角色) 的组织管理角色组中的成员身份 (获取此权限。
有关可能适用于本主题中的过程的键盘快捷方式的信息,请参阅 Exchange 管理中心的键盘快捷方式。
提示
是否有任何疑问? 在 Exchange 论坛中寻求帮助。 请访问以下论坛:Exchange Online 或 Exchange Online Protection。
查看角色组
使用新的 EAC 查看角色组
在新的 EAC 中,转到“角色>管理员角色”。 这里列出了你组织中的所有角色组。
选择角色组。 详细信息窗格显示角色组 的名称、 说明、 管理者、 写入范围、 分配和 权限 。
使用经典 EAC 查看角色组
在经典 EAC 中,转到“权限>管理员角色”。 这里列出了你组织中的所有角色组。
选择角色组。 详细信息窗格显示角色组的名称、说明、分配的角色、成员、托管者和写入范围。 还可以通过单击“ 编辑”
查看此信息。
使用 Exchange Online PowerShell 查看角色组
若要查看角色组,请使用以下语法:
Get-RoleGroup [-Identity "<Role Group Name>"] [-Filter <Filter>]
此示例返回所有角色组的摘要列表。
Get-RoleGroup
此示例返回名为“收件人管理员”的角色组的详细信息。
Get-RoleGroup -Identity "Recipient Administrators" | Format-List
此示例返回用户 Julia 是成员的所有角色组。 需要使用 Julia 的 DistinguishedName (DN) 值,可以通过运行命令找到该值: Get-User -Identity Julia | Format-List DistinguishedName
。
Get-RoleGroup -Filter "Members -eq 'CN=Julia,OU=contoso.onmicrosoft.com,OU=Microsoft Exchange Hosted Organizations,DC=NAMPR001,DC=PROD,DC=OUTLOOK,DC=COM'"
有关详细的语法和参数信息,请参阅 Get-RoleGroup。
创建角色组
创建新角色组时,需要自行配置在创建组期间或) 之后 (的所有设置。 若要从现有角色组的配置开始并对其进行修改,请参阅 复制现有角色组。
使用新的 EAC 创建角色组
在新 EAC 中,转到“角色>管理员角色”,然后单击“添加角色组”。
在 “添加角色组” 窗口中的 “设置基础知识 ”部分下,配置以下设置,然后单击“ 下一步”:
名称:输入角色组的唯一名称。
说明:输入角色组的可选说明。
写入范围:默认值为 Default,但也可以从下拉列表中选择自定义收件人写入范围。
在 “添加权限 ”部分,选择角色并单击“ 下一步”。 角色定义分配给此角色组的成员有权管理的任务范围。
在 “分配管理员 ”部分中,选择要分配给此角色组的用户,然后单击“ 下一步”。 他们将有权管理你分配的角色。
在 “查看角色组和完成 ”部分中,验证所有详细信息,然后单击“ 添加角色组”。
单击“完成”。
使用经典 EAC 创建角色组
在经典 EAC 中,转到“权限>管理员角色”,然后单击“添加
。
在出现的 “新建角色组 ”窗口中,配置以下设置:
名称:输入角色组的唯一名称。
说明:输入角色组的可选说明。
写入范围:默认值为 Default,但你也可以选择已创建的自定义收件人写入范围。
角色:单击“ 添加
。在显示的新窗口中选择要分配给角色组的角色。
成员:单击“
在显示的新窗口中选择要添加到角色组的成员。 可以选择用户、启用邮件的通用安全组 (USG) 或其他角色组 (安全主体) 。
完成后,单击“ 保存 ”以创建角色组。
使用 Exchange Online PowerShell 创建角色组
若要创建新角色组,请使用以下语法:
New-RoleGroup -Name "Unique Name" -Description "Descriptive text" -Roles <"Role1","Role2"...> -ManagedBy <Managers> -Members <Members> -CustomRecipientWriteScope "<Existing Write Scope Name>"
- Roles 参数使用以下语法
"Role1","Role1",..."RoleN"
指定要分配给角色组的管理角色。 你可以使用 Get-ManagementRole cmdlet 来查看可用角色。 - Members 参数使用以下语法指定角色组的成员:
"Member1","Member2",..."MemberN"
。 你可以指定用户、已启用邮件的通用安全组 (USG) 或其他角色组(安全主体)。 - ManagedBy 参数指定可使用以下语法修改和删除角色组的委托:
"Delegate1","Delegate2",..."DelegateN"
。 请注意,此设置在 EAC 中不可用。 - CustomRecipientWriteScope 参数指定要应用于角色组的现有自定义收件人写入范围。 你可以使用 Get-ManagementScope cmdlet 查看可用的自定义收件人写入作用域。
此示例使用以下设置创建名为“受限收件人管理”的新角色组:
- 将“邮件收件人”和“已启用邮件的公用文件夹”角色分配给角色组。
- 将用户 Kim 和 Martin 添加为成员。 由于未指定自定义收件人写入范围,因此 Kim 和 Martin 可以管理组织中的任何收件人。
New-RoleGroup -Name "Limited Recipient Management" -Roles "Mail Recipients","Mail Enabled Public Folders" -Members "Kim","Martin"
这是自定义收件人写入作用域的相同示例,这意味着 Kim 和 Martin 只能管理包含在 Seattle Recipients 范围中的收件人 (其 City 属性设置为“Seattle) 值”的收件人。
New-RoleGroup -Name "Limited Recipient Management" -Roles "Mail Recipients","Mail Enabled Public Folders" -Members "Kim","Martin" -CustomRecipientWriteScope "Seattle Recipients"
有关详细语法和参数信息, 请参阅 New-RoleGroup。
复制现有角色组
如果现有角色组在要分配给用户的权限和设置方面已接近,则可以复制现有角色组并修改副本以满足你的需求。
使用新的 EAC 复制角色组
注意:如果使用 Exchange Online PowerShell 在角色组上配置多个范围或独占范围,则不能使用新的 EAC 来复制角色组。 若要复制具有这些设置的角色组,需要使用 Exchange Online PowerShell。
在新的 EAC 中,转到“角色>管理员角色”。
选择要复制的角色组,然后单击“ 复制角色组”。
在 “复制角色组 ”窗口中的 “设置基本信息 ”部分下,配置以下设置,然后单击“ 下一步”:
- 名称:默认值为“角色组名称>的副本<,但你可以为角色组输入唯一名称。
- 说明:现有说明存在,但你可以对其进行更改。
- 写入范围:已选择现有的写入范围,但可以从下拉列表中选择 “默认 ”或“自定义收件人写入范围”。
在 “编辑权限 ”部分中,修改角色并单击“ 下一步”。 角色定义分配给此角色组的成员有权管理的任务范围。
在 “分配管理员 ”部分中,修改角色组成员身份,然后单击“ 下一步”。 他们将有权管理你分配的角色。
在 “查看角色组和完成 ”部分中,验证所有详细信息,然后单击“ 复制角色组”。
单击“完成”。
使用经典 EAC 复制角色组
注意:如果使用 Exchange Online PowerShell 在角色组上配置多个范围或独占范围,则无法使用经典 EAC 复制角色组。 若要复制具有这些设置的角色组,需要使用 Exchange Online PowerShell。
在经典 EAC 中,转到“权限>管理员角色”。
选择要复制的角色组,然后单击“ 复制
。
在出现的 “新建角色组 ”窗口中,配置以下设置:
名称:默认值为“角色组名称>的副本<,但你可以为角色组输入唯一名称。
说明:现有说明存在,但你可以对其进行更改。
写入范围:已选择现有的写入范围,但可以选择 “默认 ”或已创建的其他自定义收件人写入范围。
角色:单击“ 添加
或“ 删除
可修改分配给角色组的角色。
成员:单击“添加
“删除
以修改角色组成员身份。
完成后,单击“ 保存 ”以创建角色组。
使用 Exchange Online PowerShell 复制角色组
请使用以下语法将想要复制的角色组存储在变量中:
$RoleGroup = Get-RoleGroup "<Existing Role Group Name>"
使用以下语法创建新角色组:
New-RoleGroup -Name "<Unique Name>" -Roles $RoleGroup.Roles [-Members <Members>] [-ManagedBy <Managers>] [-CustomRecipientWriteScope "<Existing Custom Recipient Write Scope Name>"]
- Members 参数使用以下语法指定角色组的成员:
"Member1","Member2",..."MemberN"
。 你可以指定用户、已启用邮件的通用安全组 (USG) 或其他角色组(安全主体)。 - ManagedBy 参数指定可使用以下语法修改和删除角色组的委托:
"Delegate1","Delegate2",..."DelegateN"
。 请注意,此设置在 EAC 中不可用。 - CustomRecipientWriteScope 参数指定要应用于角色组的现有自定义收件人写入范围。 你可以使用 Get-ManagementScope cmdlet 查看可用的自定义收件人写入作用域。
- Members 参数使用以下语法指定角色组的成员:
此示例将组织管理角色组复制到名为“受限组织管理”的新角色组。 角色组成员是 Isabelle、Carter 和 Lukas,角色组代理人是 Jenny 和 Katie。
$RoleGroup = Get-RoleGroup "Organization Management"
New-RoleGroup "Limited Organization Management" -Roles $RoleGroup.Roles -Members "Isabelle","Carter","Lukas" -ManagedBy "Jenny","Katie"
此示例将“组织管理”角色组复制到名为“温哥华组织管理”的新角色组,该组具有“温哥华用户收件人”自定义收件人写入范围。
$RoleGroup = Get-RoleGroup "Organization Management"
New-RoleGroup "Vancouver Organization Management" -Roles $RoleGroup.Roles -CustomRecipientWriteScope "Vancouver Users"
有关详细语法和参数信息, 请参阅 New-RoleGroup。
修改角色组
使用新的 EAC 修改角色组
在新 EAC 中,转到“角色>管理员角色”,选择要修改的角色组,然后在详细信息窗格中编辑以下内容:
- 在“ 常规 ”部分中,单击“ 编辑基本信息 ”以更改名称和说明。
- 在 “分配” 部分中,从此角色组添加/删除用户。
- 在 “权限” 部分中,添加/删除分配给角色组的角色。
完成后,单击“保存”。
使用经典 EAC 修改角色组
- 在经典 EAC 中,转到“权限>管理员角色”,选择要修改的角色组,然后单击“编辑
修改角色组时,可以使用与 使用经典 EAC 创建角色组时相同的选项。 可以执行下列操作:
- 更改名称和说明。
- 如果已) 创建自定义收件人写入范围,请更改写入范围 (。
- ) 创建或删除角色分配 (添加和删除管理角色。
- 添加和删除成员。
注意:
- 如果使用 Exchange Online PowerShell 在角色组上配置多个范围或独占范围,则不能使用经典 EAC 修改角色组的写入范围、角色和成员。 若要修改这些角色组的设置,需要使用 Exchange Online PowerShell。
- 例如,某些角色组 (组织管理角色组) 限制可从组中删除的角色。
- 可以在经典 EAC 中添加或删除角色组的委托。 只能使用 Exchange Online PowerShell。
使用 Exchange Online PowerShell 将角色添加到角色组 (创建角色分配)
若要将角色添加到 Exchange Online PowerShell 中的角色组,请使用以下语法创建管理角色分配:
New-ManagementRoleAssignment [-Name "<Unique Name>"] -SecurityGroup "<Role Group Name>" -Role "<Role Name>" [-RecipientRelativeWriteScope <MyGAL | MyDistributionGroups | Organization | Self>] [-CustomRecipientWriteScope "<Role Scope Name>]
- 如果未指定角色分配名称,则会自动创建该名称。
- 如果不使用 RecipientRelativeWriteScope 参数,则角色的隐式读取范围和隐式写入范围将应用于角色分配。
- 如果预定义范围满足业务需求,则可以使用 RecipientRelativeWriteScope 参数将范围应用于角色分配。
- 若要应用自定义收件人写入范围,请使用 CustomRecipientWriteScope 参数。
此示例将 Transport Rules 管理角色分配给 Seattle Compliance 角色组。
New-ManagementRoleAssignment -SecurityGroup "Seattle Compliance" -Role "Transport Rules"
此示例将 Message Tracking 角色分配给 Enterprise Support 角色组,并应用 Organization 预定义作用域。
New-ManagementRoleAssignment -SecurityGroup "Enterprise Support" -Role "Message Tracking" -RecipientRelativeWriteScope Organization
此示例将 Message Tracking 角色分配给 Seattle Recipient Admins 角色组,并应用 Seattle Recipients 作用域。
New-ManagementRoleAssignment -SecurityGroup "Seattle Recipient Admins" -Role "Message Tracking" -CustomRecipientWriteScope "Seattle Recipients"
有关语法和参数的详细信息,请参阅 New-ManagementRoleAssignment。
使用 Exchange Online PowerShell 从角色组中删除角色 (删除角色分配)
若要从 Exchange Online PowerShell 中的角色组中删除角色,请使用以下语法删除管理角色分配:
Get-ManagementRoleAssignment -RoleAssignee "<Role Group Name>" -Role "<Role Name>" -Delegating <$true | $false> | Remove-ManagementRoleAssignment
- 若要删除向用户授予权限的常规角色分配,请使用 Delegating 参数的值
$false
。 - 若要删除允许将角色分配给其他人的委派角色分配,请使用委派参数的值
$true
。
本示例从 Seattle 收件人管理员角色组中删除通讯组角色。
Get-ManagementRoleAssignment -RoleAssignee "Seattle Recipient Administrators" -Role "Distribution Groups" -Delegating $false | Remove-ManagementRoleAssignment
有关语法和参数的详细信息,请参阅 Remove-ManagementRoleAssignment。
使用 Exchange Online PowerShell 修改角色组中的角色分配范围
角色组中角色分配的写入范围定义了角色组的成员可以对 (操作的对象,例如所有用户,或者仅其 City 属性具有温哥华) 值的用户。 可以将分配给角色组的角色的写入范围修改为:
- 角色本身的隐式范围。 这意味着在创建角色组时未指定任何自定义范围,或者将现有角色组中所有角色分配的值设置为值
$null
。 - 所有角色分配的相同自定义范围。
- 每个角色分配的不同自定义范围。
若要同时设置角色组上所有角色分配的范围,请使用以下语法:
Get-ManagementRoleAssignment -RoleAssignee "<Role Group Name>" | Set-ManagementRoleAssignment [-CustomRecipientWriteScope "<Recipient Write Scope Name>"] [-RecipientRelativeScopeWriteScope <MyDistributionGroups | Organization | Self>] [-ExclusiveRecipientWriteScope "<Exclusive Recipient Write Scope name>"]
本示例将“销售收件人管理”角色组上所有角色分配的收件人范围更改为“直接销售员工”。
Get-ManagementRoleAssignment -RoleAssignee "Sales Recipient Management" | Set-ManagementRoleAssignment -CustomRecipientWriteScope "Direct Sales Employees"
若要更改角色组和管理角色之间单个角色分配的范围,请执行以下步骤:
将“角色组名称”>替换为<角色组的名称,并运行以下命令以查找角色组上所有角色分配的名称:
Get-ManagementRoleAssignment -RoleAssignee "<Role Group Name>" | Format-List Name
查找要更改的角色分配的名称。 请在下一步中使用该角色分配的名称。
若要设置单个角色分配的范围,请使用以下语法:
Set-ManagementRoleAssignment -Identity "<Role Assignment Name"> [-CustomRecipientWriteScope "<Recipient Write Scope Name>"] [-RecipientRelativeScopeWriteScope <MyDistributionGroups | Organization | Self>] [-ExclusiveRecipientWriteScope "<Exclusive Recipient Write Scope name>"]
此示例将名为“邮件Recipients_Sales收件人管理”的角色分配的收件人范围更改为“所有销售员工”。
Set-ManagementRoleAssignment "Mail Recipients_Sales Recipient Management" -CustomRecipientWriteScope "All Sales Employees"
有关语法和参数的详细信息,请参阅 Set-ManagementRoleAssignment。
使用 Exchange Online PowerShell 修改角色组中的委托列表
角色组委托定义允许谁修改和删除角色组。 无法在 EAC 中管理角色组委托。
若要修改角色组中的委托列表,请使用以下语法:
Set-RoleGroup -Identity "<Role Group Name>" -ManagedBy <Delegates>
若要 将 现有的委托列表替换为指定的值,请使用以下语法:
"Delegate1","Delegate2",..."DelegateN"
。若要 有选择地修改 现有委托列表,请使用以下语法:
@{Add="Delegate1","Delegate2"...; Remove="Delegate3","Delegate4"...}
。
此示例将技术支持角色组的所有当前代理人替换为指定的用户。
Set-RoleGroup -Identity "Help Desk" -ManagedBy "Gabriela Laureano","Hyun-Ae Rim","Jacob Berger"
本示例添加 Daigoro Akai,并从技术支持角色组的代理人列表中删除 Valeria Barrio。
Set-RoleGroup -Identity "Help Desk" -ManagedBy @{Add="Daigoro Akai"; Remove="Valeria Barrios"}
有关语法和参数的详细信息,请参阅 Set-RoleGroup。
使用 Exchange Online PowerShell 修改角色组中的成员列表
Add-RoleGroupMember 和 Remove-RoleGroupMember cmdlet 一次添加或删除一个成员。 Update-RoleGroupMember cmdlet 可以替换或修改现有成员列表。
角色组的成员可以是用户、启用邮件的通用安全组 (USG) 或其他角色组 (安全主体) 。
若要修改角色组的成员,请使用以下语法:
Update-RoleGroupMember -Identity "<Role Group Name>" -Members <Members> [-BypassSecurityGroupManagerCheck]
- 若要将现有成员列表 替换为 指定的值,请使用以下语法:
"Member1","Member2",..."MemberN"
。 - 若要 有选择地修改 现有成员列表,请使用以下语法:
@{Add="Member1","Member2"...; Remove="Member3","Member4"...}
。
此示例将技术支持角色组的所有当前成员替换为指定的用户。
Update-RoleGroupMember -Identity "Help Desk" -Members "Gabriela Laureano","Hyun-Ae Rim","Jacob Berger"
本示例添加 Daigoro Akai,并从技术支持角色组的成员列表中删除 Valeria Barrio。
Update-RoleGroupMember -Identity "Help Desk" -Members @{Add="Daigoro Akai"; Remove="Valeria Barrios"}
有关详细语法和参数信息,请参阅 Update-RoleGroupMember。
删除角色组
无法删除内置角色组,但可以删除已创建的自定义角色组。
注意:
- 删除角色组时,也将删除角色组和管理角色之间的管理角色分配。 不会删除分配给角色组的任何管理角色。
- 如果用户依赖于角色组来访问某个功能,则删除角色组后,用户将不再有权访问该功能。
使用新的 EAC 删除角色组
- 在新的 EAC 中,转到“角色>管理员角色”。
- 选择角色组,然后单击“ 删除”。
- 在 确认 窗口中单击“确认”。
使用 EAC 删除角色组
- 在 EAC 中,转到“权限>管理员角色”。
- 选择要删除的角色组,然后单击“ 删除”
。
- 在显示的确认窗口中单击“ 是 ”。
使用 Exchange Online PowerShell 删除角色组
若要删除自定义角色组,请使用以下语法:
Remove-RoleGroup -Identity "<Role Group Name>" [-BypassSecurityGroupManagerCheck]
本示例将删除 Training Administrators 角色组。
Remove-RoleGroup -Identity "Training Administrators"
本示例将删除 Vancouver Recipient Administrators 角色组。 由于运行命令的用户未在角色组的 ManagedBy 属性中定义,因此命令中需要 BypassSecurityGroupManagerCheck 开关。 为运行命令的用户分配了角色管理角色,这使用户能够绕过安全组管理器检查。
Remove-RoleGroup - Identity "Vancouver Recipient Administrators" -BypassSecurityGroupManagerCheck
有关语法和参数的详细信息,请参阅 Remove-RoleGroup。